Async def on_ready():需要 Discord bot Python 故障排除

Posted

技术标签:

【中文标题】Async def on_ready():需要 Discord bot Python 故障排除【英文标题】:Async def on_ready(): Discord bot Python troubleshooting needed 【发布时间】:2020-03-07 10:18:23 【问题描述】:

我正在尝试为我的 python 代码解决这个问题,但我还没有解决它。有人可以帮忙吗?

@client.event
async def on_ready():
    await client.change_presence(game=discord.Game(name=data['BotStatus']))
    print('bruh idek why im using python')

@client.command(pass_context=True)
async def redeem(ctx, arg1, arg2, arg3):
    await client.delete_message(ctx.message)
    allowed_countries = [
     'US', 'GB', 'DE', 'CA', 'AU', 'IT', 'NZ', 'MX', 'BE', 'FR', 'ID', 'SG', 'BR', 'MY', 'PT', 'IL', 'DK', 'NL', 'ES', 'SE', 'NO', 'TR']

当我运行脚本时。这就是我得到的。

我目前使用的是 Python 2.7.10。如果有人可以帮我解决这个问题,它将在很多方面帮助我。

文件“bot.py”,第 173 行 async def on_ready(): ^

【问题讨论】:

代码太多,没人会看,请给出一个显示问题的最小(可重现)示例,同时指出第 173 行^^ 并给出完整的堆栈跟踪,你给了没什么好理解的^^ 编辑您的帖子,切勿在评论中添加重要信息;) 哦。好的。谢谢! 【参考方案1】:

discord.py 需要 Python 3.5.3 或更高版本。它无法在 Python 2 上运行。请参阅 Prerequisites section of the documentation

discord.py 适用于 Python 3.5.3 或更高版本。不提供对早期版本的 Python 的支持。不支持 Python 2.7 或更低版本。由于其中一个依赖项 (aiohttp) 不支持 Python 3.4,因此不支持 Python 3.4 或更低版本。

【讨论】:

【参考方案2】:

尝试升级到 python 3.6.8,它对我很有用。

【讨论】:

以上是关于Async def on_ready():需要 Discord bot Python 故障排除的主要内容,如果未能解决你的问题,请参考以下文章

在 FastAPI 中使用 `async def` 与 `def` 并测试阻塞调用

运行 Discord Bot (Python) 时未调用 on_ready

@asyncio.coroutine 与 async def

测试从常规函数调用 python 协程(async def)

测试从常规函数调用 python 协程(async def)

python3下tomorow模块报语法错误def async(n, base_type, timeout=None): ^ SyntaxError: invalid syntax