python限制变量作用域
时间: 2023-04-10 21:02:26 浏览: 299
从局部变量和全局变量开始全面解析Python中变量的作用域
5星 · 资源好评率100%
Python中的变量作用域可以分为全局作用域和局部作用域。在函数内部定义的变量属于局部作用域,只能在函数内部使用。而在函数外部定义的变量属于全局作用域,可以在整个程序中使用。
为了限制变量的作用域,Python提供了关键字global和nonlocal。使用global关键字可以在函数内部访问并修改全局变量,而nonlocal关键字可以在嵌套函数中访问并修改外层函数的变量。
例如,下面的代码演示了如何使用global和nonlocal关键字限制变量的作用域:
```
x = 10 # 全局变量
def foo():
global x # 声明x为全局变量
x = 20 # 修改全局变量x的值
y = 30 # 局部变量
def bar():
nonlocal y # 声明y为外层函数的变量
y = 40 # 修改外层函数的变量y的值
bar()
print("x =", x) # 输出全局变量x的值
print("y =", y) # 输出局部变量y的值
foo()
```
输出结果为:
```
x = 20
y = 40
```
阅读全文