python中变量的作用域
2018-01-31 22:16
211 查看
什么是作用域?就是指一个变量产生作用的范围,在哪一个范围内可以被使用
变量的作用域:全局变量的作用域、局部变量的作用域
全局变量:一般在函数、代码块外部声明的变量,被称为全局变量,作用范围,是从声明的位置往下,一直到文件的末尾都可以使用
局部变量:一般在函数内部或代码块内部声明的变量,被称为局部变量,这类变量只能在函数或代码块内部使用,超出范围不可用
#如下:b为全局变量,a为局部变量
b=10
if 1==1:
a=10
变量的作用域:全局变量的作用域、局部变量的作用域
全局变量:一般在函数、代码块外部声明的变量,被称为全局变量,作用范围,是从声明的位置往下,一直到文件的末尾都可以使用
局部变量:一般在函数内部或代码块内部声明的变量,被称为局部变量,这类变量只能在函数或代码块内部使用,超出范围不可用
#如下:b为全局变量,a为局部变量
b=10
if 1==1:
a=10
#代码块 对a是重新引用了一次(不是创建),会改变a的值 a=20 if 1==1: a=10 print(a) 运行结果:a=10 #函数 重新创建了一个变量来指向另外一个值,以下两个c是不同的c,占用不同的内存空间,函数里的c是局部变量 c=20 def eat(): c=10 eat() print(c) 运行结果:20全局变量如何在函数内部进行赋值操作?
#全局变量name name='张三' #默认情况下,如果全局变量的名称和局部变量名称相同,例如:都是name,在函数中,局部变量会将全局变量覆盖掉 def change_name(): #如果不使用global引用全局变量,是可以获取这个全局变量值得 例如s=name #但是不能修改全局变量,一旦修改,相当于创建了一个和全局变量同名的局部变量 #局部变量name # name='李四' #global:全局 引用一个全局变量,避免出现一个和全局变量同名的局部变量 #告诉这个函数,在函数内部使用的name变量是一个全局的变量 global name name='李四' #在这里输出name='李四' print(name) change_name() #在这里nmae也是李四,因为在函数里用global调用了全局变量并且进行了修改 print(name)
相关文章推荐
- python 变量作用域
- python和ruby变量作用域对比
- Python 的变量作用域和 LEGB 原则
- Python 变量作用域 —— 命名空间与 LEGB 规则
- Python学习笔记:变量作用域
- python变量作用域
- python语法31[变量的作用域+global]
- python ,java 变量作用域
- python 变量作用域
- [python]变量作用域问题
- python 函数、函数式编程、变量作用域、函数__doc__属性
- python基础----函数的定义和调用、return语句、变量作用域、传参、函数嵌套、函数对象、闭包、递归函数
- Python学习(21):Python函数(5):变量作用域与闭包
- Python 的变量作用域和 LEGB 原则
- python-变量作用域
- Python (七)变量作用域
- 讲解Python中for循环下的索引变量的作用域
- 【Python】变量作用域
- Python函数参数传递以及变量作用域
- python 变量作用域实例