|
在嵌套函数中,可以通过在内部函数使用 `global` 声明访问全局变量,而外部函数使用局部变量。以下是简洁的实现方案:
- x = 880 # 全局变量
- def funA():
- x = 520 # funA的局部变量
- def funB():
- global x # 声明使用全局变量x
- print("In funB x =", x) # 访问全局变量880
-
- funB() # 调用内部函数
- print("In funA x =", x) # 访问局部变量520
- funA()
- print("全局 x =", x) # 验证全局变量未被修改
复制代码
运行结果:
In funB x = 880
In funA x = 520
全局 x = 880
关键点说明:
1. 在 funB 中使用 global x 强制访问全局变量
2. 在 funA 中直接赋值 x=520 创建局部变量
3. 两个 x 分别属于不同作用域,互不影响
这种方法比在外部函数使用 global 更安全,不会意外修改全局变量值。注意 global 声明只需在需要访问全局变量的函数内部使用即可。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|