所以我试图用 discord,.py 制作一个不和谐的机器人,我希望机器人在有人发送包含某个字符串的消息时说些什么。这就是我想要发生的
@client.event
async def on_message(msg):
if 'i' in msg:
channel = client.get_channel("742261026686500896")
await channel.send("i")
我收到这个错误
TypeError: argument of type 'Message' is not iterable
我该怎么做?
答案 0 :(得分:1)
>
是一个具有多个属性的对象。文本部分位于 msg
中。试试这个:
msg.content
答案 1 :(得分:1)
@client.event
async def on_message(msg):
if 'i' in msg:
channel = client.get_channel("742261026686500896")
await channel.send("i")
不和谐 Message
是一个不可分割的对象(您收到错误的原因)。您没有正确访问信息。 Message
对象包含有关其他、频道等的信息。
您可以查看有关此主题的文档,here。
要访问消息的内容,您应该使用 msg.content
。
然后,您可以对其进行测试。示例:
@client.event
async def on_message(msg):
if 'i' in msg.conent:
channel = client.get_channel("742261026686500896")
await channel.send("i")