如果全局变量和局部变量的名字一样,函数中访问的是 ()变量
时间: 2024-11-13 14:24:52 浏览: 16
如果全局变量和局部变量的名字在函数内部发生冲突,即它们有相同的名称,那么在函数内部,除非显式指定作用域,否则默认情况下函数会优先查找并访问局部变量。也就是说,当你在函数中提到这个变量时,实际访问的是局部变量,而不是全局变量。
如果你想在函数内部访问全局变量,你需要使用`global`关键字明确指明你要操作的是全局变量,如下所示:
```python
global_var = "I am a global variable"
def my_function():
local_var = "This is a local variable"
# 若要访问全局变量,需要先声明它为global
global global_var
print(global_var) # 这里会打印"I am a global variable"
my_function()
```
在这里,如果你只是简单地打印`print(var)`,它会打印出`local_var`,因为这是函数内的默认行为。只有当明确用`global`关键字指定`global_var`时,才会引用全局变量。
阅读全文