我有一个关于全局()Python中的问题全局()函数内部范围
我的示例代码
b=9
def a1():
'kkk'
a1()
print globals()
我输出B作为全球
由于B是全球性的,我我期待我可以在任何地方修改它 所以我修改我的代码到
b=9
def a1():
'kkk'
b=100
a1()
print globals()
仍然我的全局变量()表示b为100.为什么函数内的b被当作本地值,而我的全局变量()表示它的全局变量?
注意:如果我在函数内部添加关键字global b,它将转换为全局。 我的问题是为什么b在函数内部没有被修改,而globals()声明b是全局的?
你的问题不直接关于该错误,但它实际上是相同的:为什么变量分配给函数local? –