我在学Python。一本关于Python 3的书说以下代码应该可以正常工作:
def funky():
print(myvar)
myvar = 20
print(myvar)
myvar = 10
funky()
但是当我在Python3.3中运行它时,我得到了
UnboundLocalError: local variable 'myvar' referenced before assignment
错误。我的理解是,funky
中的第一个print(myvar)
应该是10,因为它是一个全局变量。第二个print(myvar)
应该是20,因为局部myvar
被定义为20。这是怎么回事?请帮忙澄清。
目前没有回答
相关问题 更多 >
编程相关推荐