global Python · 关键字
函数内部,如果你想修改全局变量(函数外面定义的变量),必须先声明 global,否则 Python 会以为你定义了一个新的局部变量。像你在房间里要拿客厅的遥控器,需要先说明“我要用客厅那个”。
怎么用
global 变量名
小例子
x = 5 # 全局变量
def change():
global x # 声明我要修改全局的 x
x = 10
change()
print(x) # 10
不加 global 的对比
x = 5
def no_change():
x = 10 # 这其实是创建了一个新的局部变量 x,不影响全局
no_change()
print(x) # 还是 5
提醒:global 可以声明多个变量:global x, y。过度使用 global 会让程序难以维护,尽量通过函数参数和返回值传递数据。
官方文档:https://docs.python.org/zh-cn/3/reference/simple_stmts.html#global
在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Python全部词条