- 作用域:变量起作用的范围。
- Local局部作用域:在函数内部起作用。
- Enclosing 外部嵌套作用域 :函数嵌套。
- Global全局作用域:模块(.py文件)内部。 (在函数外)
- Builtin内置模块作用域:builtins.py文件。
g01 = "a"
def fun01():
# 局部作用域:函数体内部
# 局部变量
a = 100
print(a)
# 只能读取全局变量
print(g01)
print(g02)
g02 = "b"
fun01()
def fun02():
# 不能修改全局变量
# g01 ="A"
# 通过global声明全局变量g01,就可以改变全局变量
global g01
g01 = "A"
fun02()
print(g01)
global 语句
- 作用:
在函数内部修改全局变量。
在函数内部定义全局变量(全局声明)。 - 语法:
global 变量1, 变量2, … - 说明
在函数内直接为全局变量赋值,视为创建新的局部变量。(但最好不要用)
不能先声明局部的变量,再用global声明为全局变量。