【发布时间】:2021-01-27 06:32:26
【问题描述】:
a = 0
b = 0
def test():
a = 1
b = 1
class Test:
print(a, b)
a = 2
test()
它给了
0 1
应该是
1 1
为什么会这样?
【问题讨论】:
-
我也不确定,但是当我在
Test中使用nonlocal a和nonlocal b时,它会输出1,1。希望有人能解释原因。 -
这能回答你的问题吗? Weird scoping behavior in python
标签: python python-3.x