鄙人学习笔记 开发工具:Spyder 文章目录 作用域LEGB 局部变量 全局变量 global语句 作用域LEGB 作用域(变量起作用的范围) 例子1 代码: #全局变量:当
鄙人学习笔记
开发工具:Spyder
文章目录
- 作用域LEGB
- 局部变量
- 全局变量
- global语句
作用域LEGB
- 作用域(变量起作用的范围)
- 例子1
代码:
#全局变量:当前.py文件内部都可访问global01 = 100
def fun01():
#局部变量:在方法内部创建的变量,只能在方法内部使用
l01 = 2
print(l01)
#在方法内部创建了局部变量global01,没有修改全局变量global01
global01 = 3
print(global01)
print(global01)
print("---------")
fun01()
print("---------")
print(global01)
结果:
- 例子2
代码:
#全局变量:当前.py文件内部都可访问global01 = 100
def fun01():
#局部变量:在方法内部创建的变量,只能在方法内部使用
l01 = 2
print(l01)
#如果在方法内修改全局变量,则必须使用global关键字声明
global global01
global01 = 300
print(global01)
print("---------")
fun01()
print("---------")
print(global01)
结果:
- 变量名的查找规则
局部变量
①局部变量是定义在函数内部的变量(形参也是局部变量)
②局部变量只能在函数内部使用
③调用函数时才被创建,函数结束后自动销毁
全局变量
①全局变量是定义在函数外部,模块内部的变量。
②在整个模块(py文件)范围内访问
③全局变量在函数内部可读,但是一般不能修改(使用global关键字可修改)。
global语句
- 作用
①在函数内部修改全局变量。
②在函数内部定义全局变量(全局声明)。
- 语法
- 说明
不能先声明某变量为局部变量,再用global声明其为全局变量。
比如: