小编Dr.*_*020的帖子

为什么我在赋值错误之前得到一个引用的局部变量?

答案应该是2因为首先main()调用该函数,然后调用该first()函数,覆盖在任何函数之外定义的全局变量num = 0,从而将其变为具有全局范围的变量.但是我收到以下错误:

UnboundLocalError: local variable 'num' referenced before assignment  
Run Code Online (Sandbox Code Playgroud)

为什么我收到此错误?

def first():
    num = num + 1

def main():
    num = 1
    first()
    print(num)

num = 0

num_result = main()

print(num_result) 
Run Code Online (Sandbox Code Playgroud)

python

1
推荐指数
2
解决办法
5万
查看次数

标签 统计

python ×1