有没有一种更简单的方法可以在不和谐的.py机器人中获得用户的用户名



现在这是我正在使用的当前代码:

@client.command(pass_context=True)
async def nname(ctx, member: discord.Member, nick):
name = member.display_name
await member.edit(nick= name + ' (' + nick + ')')
await ctx.send(f'Nickname was changed for {member.mention} ')

因此,当有人输入.name用户名昵称时,它会更新他们的昵称,将他们选择的昵称放在括号中。有没有一种方法可以让调用.name((函数的人获得用户名,并编辑他们在服务器上的昵称,而不需要他们先输入自己的用户名?所以最终结果他们可以只做.name昵称,它只会更新为用户名(昵称(

您可以将member定义为消息的作者,因此执行以下操作:

@client.command(pass_context=True)
async def nname(ctx, nick):
member = ctx.message.author # Member is now the author of the message
name = member.display_name
await member.edit(nick= name + ' (' + nick + ')')
await ctx.send(f'Nickname was changed for {member.mention} ')

最新更新