Discord.py ping 输入消息的用户

我编写了一个命令,提示服务器输入 2 个数字,然后用户在尽可能短的时间内添加这些数字。我正在尝试找出一种方法来 ping 得到正确答案的用户,但我似乎无法让它发挥作用。我尝试应用的一件事是添加m.author == message.author到返回行,如此处所示,但我收到一条错误消息未定义。我对此还很陌生,所以很高兴知道如何将其实现到我的代码中,或者是否有不同的方法,因为我想要的就是能够让机器人 ping 发送该消息的用户首先正确答案。


@client.command()

async def math(ctx):

    num_one = random.randint(1, 98)

    num_two = randint(1, 98)

    answer = num_one + num_two

    answer_string = str(answer)

    await ctx.send(f'{num_one} + {num_two}?')

    def check(m):

        return m.content == answer_string

    msg = await client.wait_for('message', check=check)

    await ctx.send(f"got the correct answer!")```


皈依舞
浏览 104回答 1
1回答

莫回无

你应该能够做到await ctx.send(f"{msg.author.mention} got the correct answer!")。client.wait_for返回一个Message对象,这意味着它有一个author属性。然后,您可以使用成员对象(作者)的 .mention 属性,这将 ping 他们。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python