如何在Python函数中运行异步代码?

时间:2018-11-27 16:39:46

标签: python python-3.x discord.py

所以,我有一个使用discord.py的Python程序,我试图让函数管理不同的消息命令,但是当我在函数中放入“ await”时,它给了我一个语法错误,因为它不在异步中。有什么办法可以解决这个问题吗?

def selectedCommand(message):
    await client.send_message(stuff in here)

@client.event
async def on_message(message):
    selectedCommand(message)

@client.event
async def on_edit_message(message):
    selectedCommand(message)

1 个答案:

答案 0 :(得分:1)

您还需要使selectedCommand成为协程(一个async def函数),然后在调用它时await将其制成:

async def selectedCommand(message):
    await client.send_message(stuff in here)

@client.event
async def on_message(message):
    await selectedCommand(message)