我的if语句在whois命令| discord.py中不起作用

我的if语句在whois命令| discord.py中不起作用,discord.py,Discord.py,因此,我正在生成一个whois命令,并且我正在生成的if语句使它成为这样,如果用户没有角色,那么值=None。然而,我有麻烦了。这是密码 @commands.command(别名=[“whois”]) 异步def userinfo(self、ctx、成员:discord.member=None): 如果不是成员: 成员=ctx.message.author embed=discord.embed(color=discord.color(random.randint(116777215)),tim

因此,我正在生成一个whois命令,并且我正在生成的if语句使它成为这样,如果用户没有角色,那么值=None。然而,我有麻烦了。这是密码

@commands.command(别名=[“whois”])
异步def userinfo(self、ctx、成员:discord.member=None):
如果不是成员:
成员=ctx.message.author
embed=discord.embed(color=discord.color(random.randint(116777215)),timestamp=ctx.message.created_at,title=f“用户信息-{member}”)
嵌入.set_缩略图(url=member.avatar_url)
嵌入.add_字段(name=“name”,value=member.name)
嵌入.add_字段(name=“ID:,value=member.ID)
嵌入.add_字段(name=“昵称:”,value=member.display_name)
嵌入.add_字段(name=“Status”,value=member.Status)
嵌入.add_字段(name=“在:”,value=member.Created_在.strftime(“%a,%”d%B%Y,%I:%M UTC”))
embed.add_字段(name=“加入服务器的时间:”,value=(member.Joined_在.strftime(“%a,%”d%B%Y,%I:%M%p UTC”))
roles=[role.notice for role in member.roles[1:]
embed.add_字段(name=f“角色({len(角色)}):”,value=“,”。加入(角色),
内联=假)
embed.add_字段(name=“Highest Role:”,value=member.top_Role.notice)
等待ctx.send(嵌入=嵌入)
如果角色==无:
embed.add_字段(name=“Roles”,value=“None”,inline=False)
所以我问我的朋友谁擅长python,他寄给我这个:

@commands.command(别名=[“whois”])
异步def userinfo(self、ctx、成员:discord.member=None):
如果不是成员:
成员=ctx.message.author
embed=discord.embed(color=discord.color(random.randint(116777215)),timestamp=ctx.message.created_at,title=f“用户信息-{member}”)
嵌入.set_缩略图(url=member.avatar_url)
嵌入.add_字段(name=“name”,value=member.name)
嵌入.add_字段(name=“ID:,value=member.ID)
嵌入.add_字段(name=“昵称:”,value=member.display_name)
嵌入.add_字段(name=“Status”,value=member.Status)
嵌入.add_字段(name=“在:”,value=member.Created_在.strftime(“%a,%”d%B%Y,%I:%M UTC”))
embed.add_字段(name=“加入服务器的时间:”,value=(member.Joined_在.strftime(“%a,%”d%B%Y,%I:%M%p UTC”))
roles=[role.notice for role in member.roles[1:]
如果roles==None:embed.add_字段(name=f“roles({len(roles)}):”,value=“,”。join(roles),inline=False)
embed.add_字段(name=“Highest Role:”,value=member.top_Role.notice)
等待ctx.send(嵌入=嵌入)
这就是错误所在

In embed.fields.6.value: This field is required

它可以工作,但问题是它显示了@@everyone角色,如何摆脱@@everyone角色?

这是固定的代码,
@everyone
角色始终是成员的第一个角色,所以只需通过从第二个元素访问列表来排除他:
成员。角色[1:
,此外,当您尝试发送嵌入,但用户除了
@everybody
角色之外没有其他角色时,它将抛出一个错误,因为
角色
列表为空,因此必须包含检查以防止插入空值

commands.command(别名=[“whois”])
异步def userinfo(self、ctx、成员:discord.member=None):
如果不是成员:
成员=ctx.message.author
embed=discord.embed(color=discord.color(random.randint(116777215)),timestamp=ctx.message.created_at,title=f“用户信息-{member}”)
嵌入.set_缩略图(url=member.avatar_url)
嵌入.add_字段(name=“name”,value=member.name)
嵌入.add_字段(name=“ID:,value=member.ID)
嵌入.add_字段(name=“昵称:”,value=member.display_name)
嵌入.add_字段(name=“Status”,value=member.Status)
嵌入.add_字段(name=“在:”,value=member.Created_在.strftime(“%a,%”d%B%Y,%I:%M UTC”))
embed.add_字段(name=“加入服务器的时间:”,value=(member.Joined_在.strftime(“%a,%”d%B%Y,%I:%M%p UTC”))
#固定部分
roles=[role.notice for role in member.roles[1:]
如果len(成员角色[1:])<1:
embed.add_字段(name=f“Roles:”,value=“None”,inline=False)
嵌入.add_字段(name=“最高角色:”,value=“无”)
elif角色!=无:
embed.add_字段(name=f“Roles({len(Roles)}):”,value=“,”。join(Roles),inline=False)
embed.add_字段(name=“Highest Role:”,value=member.top_Role.notice)
#修复结束
等待ctx.send(嵌入=嵌入)

顺便说一句,您可以使用
\u200b
作为空行,而不是
非常感谢!!我知道\u200b,但我认为“无”看起来更好