Python的global
时间: 2024-09-22 08:09:54 浏览: 38
Python中关键字global和nonlocal的区别详解
在Python中,`global`关键字用于声明一个变量为全局变量(Global Variable)。当你在一个函数内部试图修改一个已经在该函数外部定义的变量时,如果不明确告知Python这是全局变量,它会默认认为这是一个局部变量(Local Variable),并创建一个新的副本来进行操作。使用`global`可以告诉Python你想要直接访问并改变的是全局变量,防止意外的覆盖或命名冲突。
例如:
```python
x = 5 # 定义全局变量
def change_global():
global x # 明确声明x是全局变量
x = 10 # 此处会直接修改全局变量x
change_global()
print(x) # 输出:10
```
如果没有`global`关键字,函数内部对`x`的赋值将不会影响全局的`x`:
```python
y = 5 # 这是一个局部变量,与上面的x无关
def wrong_change():
y = 10 # 这里创建了一个新的局部变量y,不会改变全局的y
change_wrong_change() # 不会影响全局的x或y
print(y) # 输出:5
```
阅读全文