Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在异步函数中赋值之前引用的局部变量,已赋值同名的全局变量_Python_Asynchronous_Global Variables_Discord - Fatal编程技术网

Python 在异步函数中赋值之前引用的局部变量,已赋值同名的全局变量

Python 在异步函数中赋值之前引用的局部变量,已赋值同名的全局变量,python,asynchronous,global-variables,discord,Python,Asynchronous,Global Variables,Discord,在过去的几天里,我一直在开发一个Discord机器人。在我遇到这个问题之前,一切都很好: said_yes=False 说“不”=错 @discordclient.event _ready()上的异步定义: . . . @discordclient.event 异步def on_消息(消息): 如果message.content=='.blackjack': . . . 如果message.content.lower() 说“是”=真; . . . elif message.content

在过去的几天里,我一直在开发一个Discord机器人。在我遇到这个问题之前,一切都很好:

said_yes=False
说“不”=错
@discordclient.event
_ready()上的异步定义:
. . .   
@discordclient.event
异步def on_消息(消息):
如果message.content=='.blackjack':
. . .
如果message.content.lower()
说“是”=真;
. . .
elif message.content.lower()=='no'并说_yes==False:
说不等于真;
. . .
elif message.content.lower()!='。blackjack'和said_yes==假和said_no==假:
. . .
错误消息是:

File "filename.py", line 95, in on_message
    elif message.content.lower() == 'no' and said_yes == False:
UnboundLocalError: local variable 'said_yes' referenced before assignment
此错误发生在第二个
if
语句以及第一个和第二个
elif
语句上。
唯一的区别是变量(
表示“是”
表示“否”

如何修复此错误?我希望
说的是
说的不是
变量在全局范围内