【问题标题】:How to convert a string to a user discord.py如何将字符串转换为用户 discord.py
【发布时间】:2019-03-20 21:30:22
【问题描述】:

我正在尝试将字符串转换为用户,以便我可以对他们进行 dm。这是我当前的代码:

    @bot.command(pass_context=True)
async def partnerwarn(ctx):
file_names = glob.glob("p*")
for file in file_names:
    f = open(file, 'r')
    content = f.read()
    f.close()
    member = file[1:]      
    await bot.send_message(member : discord.User, "You've had under 7 partners! This is a warning, please make sure you actively partner!")
    print("Warned!")
    await bot.reply("**" + file[1:] + " was warned!**")

它不起作用,因为member : discord.User 在当前位置是无效语法。我应该如何解决这个问题?

【问题讨论】:

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


    【解决方案1】:

    command 装饰器看到装饰协程的参数之一上的注释时,它知道在参数传递给底层协程之前使用正确的converter 或直接将注释应用为可调用。

    您可以创建自己的MemberConverter 对象,并使用它们的convert 协程将字符串转换为Members:

    from discord.ext.commands import MemberConverter
    
    ...
    
    converter = MemberConverter()
    member = await converter.convert(ctx, file[1:])
    

    【讨论】:

      猜你喜欢
      • 2019-06-04
      • 1970-01-01
      • 2013-11-27
      • 1970-01-01
      • 2011-12-31
      • 2018-04-30
      • 2014-05-26
      相关资源
      最近更新 更多