【问题标题】:How to get user based off of name or mention如何根据姓名或提及获取用户
【发布时间】:2019-07-17 16:51:18
【问题描述】:

我正在设置一个机器人,当有人输入命令后跟用户的用户名或提及用户时,我需要获取一个用户对象。我不需要这两个都可以工作,只需要一个或一个。

我看到您可以使用带有 id 的 client.get_user 但是我不希望输入命令的人必须处理获取 id 并且宁愿他们只使用用户名或提及用户。我已经让命令部分工作了,我只需要能够获取用户,并且想知道是否有类似 get_user 的东西使用用户名或提及用户。

【问题讨论】:

标签: python discord.py


【解决方案1】:

嗯,有 2 种解决方案可供选择(其他人可能会发现更多)

  1. 获取用户对象(用户不需要发送他们的 id,bot 会这样做)

    user = discord.utils.get(ctx.guild.members, id=ctx.author.id)
    

    然后发送一条消息:

    await ctx.send(f"Hello {user.mention}")
    
  2. 仅使用 ctx.author(比第一个解决方案更容易)

    await ctx.send(f"Hello {ctx.author.mention}!")
    

【讨论】:

    猜你喜欢
    • 2020-02-15
    • 2015-04-20
    • 1970-01-01
    • 2017-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-03
    • 2011-12-21
    相关资源
    最近更新 更多