Python 我为我的机器人做了一个循环,但它赢了';跑不动

Python 我为我的机器人做了一个循环,但它赢了';跑不动,python,discord.py,Python,Discord.py,我正在使用discord.py创建一个discord bot,我正在为我的借用命令使用一个事件循环,但是当我运行它时,它会给我一堆错误代码。错误代码表示循环已在运行,但我只是修改了代码 注意:这是discord.py包的问题,而不是python本身。 代码: 错误代码: File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 631, in run lo

我正在使用discord.py创建一个discord bot,我正在为我的借用命令使用一个事件循环,但是当我运行它时,它会给我一堆错误代码。错误代码表示循环已在运行,但我只是修改了代码

注意:这是discord.py包的问题,而不是python本身。

代码:

错误代码:

  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 631, in run
    loop.run_forever()
  File "/usr/lib/python3.8/asyncio/base_events.py", line 560, in run_forever
    self._check_running()
  File "/usr/lib/python3.8/asyncio/base_events.py", line 552, in _check_running
    raise RuntimeError('This event loop is already running')
RuntimeError: This event loop is already running

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 92, in _cleanup_loop
    _cancel_tasks(loop)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 77, in _cancel_tasks
    loop.run_until_complete(asyncio.gather(*tasks, return_exceptions=True))
  File "/usr/lib/python3.8/asyncio/base_events.py", line 592, in run_until_complete
    self._check_running()
  File "/usr/lib/python3.8/asyncio/base_events.py", line 552, in _check_running
    raise RuntimeError('This event loop is already running')
RuntimeError: This event loop is already running

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "main.py", line 801, in <module>
    asyncio.get_event_loop().run_until_complete(run_bot())
  File "/usr/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
    return future.result()
  File "main.py", line 798, in run_bot
    await client.run(Token)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 637, in run
    _cleanup_loop(loop)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 97, in _cleanup_loop
    loop.close()
  File "/usr/lib/python3.8/asyncio/unix_events.py", line 58, in close
    super().close()
  File "/usr/lib/python3.8/asyncio/selector_events.py", line 89, in close
    raise RuntimeError("Cannot close a running event loop")
RuntimeError: Cannot close a running event loop
文件“/opt/virtualenvs/python3/lib/python3.8/site packages/discord/client.py”,第631行,正在运行
loop.run_forever()
文件“/usr/lib/python3.8/asyncio/base\u events.py”,第560行,永远运行
自我检查运行()
文件“/usr/lib/python3.8/asyncio/base\u events.py”,第552行,正在运行
raise RUNTIMERROR('此事件循环已在运行')
RuntimeError:此事件循环已在运行
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“/opt/virtualenvs/python3/lib/python3.8/site packages/discord/client.py”,第92行,循环中
_取消任务(循环)
文件“/opt/virtualenvs/python3/lib/python3.8/site packages/discord/client.py”,第77行,在“取消”任务中
loop.run_直到_完成(asyncio.gather(*tasks,return_exceptions=True))
文件“/usr/lib/python3.8/asyncio/base\u events.py”,第592行,运行直到完成
自我检查运行()
文件“/usr/lib/python3.8/asyncio/base\u events.py”,第552行,正在运行
raise RUNTIMERROR('此事件循环已在运行')
RuntimeError:此事件循环已在运行
在处理上述异常期间,发生了另一个异常:
回溯(最近一次呼叫最后一次):
文件“main.py”,第801行,在
asyncio.get_event_loop()。运行_直到完成(运行_bot())
文件“/usr/lib/python3.8/asyncio/base\u events.py”,第616行,运行直到完成
返回future.result()
文件“main.py”,第798行,在run_bot中
等待客户端运行(令牌)
文件“/opt/virtualenvs/python3/lib/python3.8/site packages/discord/client.py”,第637行,正在运行
_清除循环(循环)
文件“/opt/virtualenvs/python3/lib/python3.8/site packages/discord/client.py”,第97行,循环中
loop.close()
文件“/usr/lib/python3.8/asyncio/unix_events.py”,第58行,关闭
super().close()
文件“/usr/lib/python3.8/asyncio/selector_events.py”,第89行,关闭
raise RUNTIMERROR(“无法关闭正在运行的事件循环”)
RuntimeError:无法关闭正在运行的事件循环

不是一个协同程序,而是一个函数。使用事件循环的机制已经包含在其中。当您想要运行bot时,您应该只调用
client.run(Token)

不是一个协同程序,它是一个函数。使用事件循环的机制已经包含在其中。当你想运行你的机器人时,你只需调用
client.run(Token)

检查此链接@isAif Thank,我看。检查此链接@isAif Thank,我看。
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 631, in run
    loop.run_forever()
  File "/usr/lib/python3.8/asyncio/base_events.py", line 560, in run_forever
    self._check_running()
  File "/usr/lib/python3.8/asyncio/base_events.py", line 552, in _check_running
    raise RuntimeError('This event loop is already running')
RuntimeError: This event loop is already running

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 92, in _cleanup_loop
    _cancel_tasks(loop)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 77, in _cancel_tasks
    loop.run_until_complete(asyncio.gather(*tasks, return_exceptions=True))
  File "/usr/lib/python3.8/asyncio/base_events.py", line 592, in run_until_complete
    self._check_running()
  File "/usr/lib/python3.8/asyncio/base_events.py", line 552, in _check_running
    raise RuntimeError('This event loop is already running')
RuntimeError: This event loop is already running

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "main.py", line 801, in <module>
    asyncio.get_event_loop().run_until_complete(run_bot())
  File "/usr/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
    return future.result()
  File "main.py", line 798, in run_bot
    await client.run(Token)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 637, in run
    _cleanup_loop(loop)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 97, in _cleanup_loop
    loop.close()
  File "/usr/lib/python3.8/asyncio/unix_events.py", line 58, in close
    super().close()
  File "/usr/lib/python3.8/asyncio/selector_events.py", line 89, in close
    raise RuntimeError("Cannot close a running event loop")
RuntimeError: Cannot close a running event loop