[英]Python - UnboundLocalError: local variable referenced before assignment`
[英]UnboundLocalError: local variable 'turn' referenced before assignment - python
尝试查找此内容,但没有人对全局变量有此问题。 出于某种原因,如果我不将全局转向放在 function 内,它就会一直给我这个错误。
global turn
turn = 1
def turn_changer():
if turn == 1:
turn = 2
else:
turn = 1
这篇文章可能对你有所帮助。 本质上,由于 python 的变量作用域,您无法访问 function 之外的变量。 编译器需要一个名为turn
的局部变量(在 function 主体内)。
当它找不到它时,它会抛出您描述的错误。 因此,如果您需要引用该变量,您可以按照您的建议指定global turn
,或者您可以将变量turn
传递给 function。
您需要指定您将使用“全局” turn
变量,这将起作用:
turn = 1
def turn_changer():
global turn
if turn == 1:
turn = 2
else:
turn = 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.