我很好奇以下代码为什么会产生错误:
def test_method():
main_var = 0
main_list = list()
def sub_method():
print(main_list)
main_list.append(0)
print(main_list)
print(main_var)
main_var +=1
print(main_var)
sub_method()
错误
UnboundLocalError: local variable 'main_var' referenced before assignment
尤其是,它不会抱怨列表,但是会抱怨变量。