簡體   English   中英

Discord.py:如何從用戶 object 那里獲得會員 object?

[英]Discord.py: How do I get a member object from a user object?

所以我有一個用戶 object,但我想在公會中訪問他們的昵稱,我也有。 有沒有辦法做到這一點? 還是我完全不知道。

謝謝。

我試過了,但沒有用:

intents = discord.Intents.default()
intents.members = True

@client.command(pass_context = True)
async def test(ctx,id):
  name = ctx.author.guild.get_member(id).nick
  return name

錯誤是: AttributeError: 'NoneType' object has no attribute 'nick'

最簡單的方法是使用discord.Member ,這樣您就可以立即獲得用戶 object。 這將接受idmentionname為 arguments。

@client.command()
async def test(ctx, user: discord.Member):
    if user.nick == None:
        await ctx.send(f"Display name: {user.display_name}")
    else:
        await ctx.send(f"Nickname: {user.nick}")

在這里看到的工作


但是,如果您想使用您提供的代碼,您需要將您的id轉換為int 不過,這是假設用戶有昵稱。 如果用戶沒有昵稱,它將返回None

@client.command(pass_context=True)
async def test(ctx, id:int):
    name = ctx.author.guild.get_member(id).nick
    await ctx.send(name)

使用給定的代碼

暫無
暫無

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

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