1
私はdiscord.pyを使用してDiscord Botを実装しています。コマンドに基づいて関数を動的に呼び出そうとしています。私はexec()を使って動的関数呼び出しをテストすることができましたが、discord.pyに必要な非同期呼び出しが混乱するようです。exec()で動的に非同期関数を呼び出す
私はこの例では、hello関数を呼び出して、Hello Worldをチャットで!helloと入力することで問題を解決しています。
@client.event
async def on_message(message):
call = 'await ' + message.content.lower()[1:] + '(message)'
exec(call)
async def hello(message):
await client.send_message(message.channel, 'Hello World')
残念ながら、このコードは何もしていないようです。私はexec()が非同期呼び出しを処理する方法のために仮定しています。どんな助けもありがとう。