在 Python 中,global 关键字允许你修改当前范围之外的变量。它用于创建全局变量并在本地上下文中更改变量。
-- Programiz
有用的原文链接
请访问文末的“
原文链接
”获得可点击的文内链接、全尺寸原图和相关文章。
致谢
作者 | Programiz
译者 | MjSeven 共计翻译:
28
篇 贡献时间:80 天
在读这篇文章之前,确保你对 Python 全局、本地和非本地变量[1] 有一定的基础。
global 关键字简介
在 Python 中,global 关键字允许你修改当前范围之外的变量。它用于创建全局变量并在本地上下文中更改变量。
global 关键字的规则
在 Python 中,有关 global 关键字基本规则如下:
当我们在一个函数中创建一个变量时,默认情况下它是本地变量。
当我们在一个函数之外定义一个变量时,默认情况下它是全局变量。你不必使用
global
关键字。
我们使用
global
关键字在一个函数中来读写全局变量。
在一个函数外使用
global
关键字没有效果。
使用 global 关键字(含示例)
我们来举个例子。
示例 1:从函数内部访问全局变量
c =1#全局变量
def add():
print(c)
add()
运行程序,输出为:
1
但是我们可能有一些场景需要从函数内部修改全局变量。
示例 2:在函数内部修改全局变量
c =1#全局变量
def add():
c = c 2#将 c 增加2
print(c)
add()
运行程序,输出显示错误:
UnboundLocalError:local variable 'c' referenced before assignment
这是因为在函数中,我们只能访问全局变量但是不能修改它。
解决的办法是使用 global 关键字。
示例 3:使用 global 在函数中改变全局变量
c =0#global variable
def add():
global c
c = c 2#将 c 增加2
print(
领取专属 10元无门槛券
私享最新 技术干货