簡體   English   中英

如何將字符串轉換為用戶discord.py

[英]How to convert a string to a user discord.py

我正在嘗試將字符串轉換為用戶,因此我可以將它們轉換為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當前是無效的語法。 我該怎么解決這個問題?

command裝飾器在裝飾協程的其中一個參數上看到注釋時,它知道要么使用正確的轉換器 ,要么在將參數傳遞給基礎協程之前直接將注釋應用為可調用。

您可以創建自己的MemberConverter對象,並使用它們通過使用convert協程將字符串轉換為Member

from discord.ext.commands import MemberConverter

...

converter = MemberConverter()
member = await converter.convert(ctx, file[1:])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM