一个简单的问题:Python函数中变量的范围

时间:2019-02-22 19:20:25

标签: python-3.x

用初学者的话,为什么会给我一个错误?

hey = 1
def addition(x):
    hey = hey + x
    return hey
print(addition(1))

我收到此错误消息:

UnboundLocalError: local variable 'hey' referenced before assignment

1 个答案:

答案 0 :(得分:1)

肯定是重复的,但要回答这个问题,您应该查看global变量。

如果您希望上面的代码正常工作,则需要告诉python您正在将hey用作global变量,例如:

hey = 1
def addition(x):
    global hey 
    hey = hey + x
    return hey
print(addition(1))