【发布时间】:2018-02-24 05:40:46
【问题描述】:
我有一个关于 python 中的 globals() 的问题
我的示例代码
b=9
def a1():
'kkk'
a1()
print globals()
我将输出 b 设为全局
由于 b 是全局的,我希望我可以在任何地方修改它 所以我将代码修改为
b=9
def a1():
'kkk'
b=100
a1()
print globals()
我的 globals() 仍然说 b 为 100。为什么函数内部的 b 被视为局部值,而我的 globals() 说它是全局的?
注意:如果我在函数中添加关键字 global b,它会转换为全局。 我的问题是为什么在 globals() 将 b 声明为全局时 b 没有在函数内部被修改?
【问题讨论】:
-
您的问题不是直接与该错误有关,但实际上是相同的:为什么在本地函数中分配变量?
标签: python global-variables globals