我正在尝试使用库discord.py创建“派系机器人”。我的机器人的create命令引发异常AttributeError: 'str' object has no attribute 'value'
。这是我的代码:
@commands.command()
async def c(self, ctx, color: str, *, name: str):
name_lower = name.lower()
if name_lower.endswith("owner"):
embed = discord.Embed(
title=":x: Error Creating Faction",
colour=discord.Colour.purple(),
description="Make sure your faction name doesn't end with the word **owner**."
)
await ctx.send(embed=embed)
else:
if name_lower.endswith("faction"):
role_name = name_lower.capitalize()
else:
role_name = f"{name_lower.capitalize()} Faction"
await ctx.guild.create_role(name=role_name, color=color)
await ctx.guild.create_role(name=f"{role_name} Owner", color=color)
await ctx.message.add_reaction(":white_check_mark:")
该命令将颜色字符串和名称字符串作为输入。在第5行(if name_lower.endswith("owner"):
上,它检测name
的小写版本是否以单词“ owner”结尾。问题是,此行引发异常AttributeError: 'str' object has no attribute 'value'
。
是什么原因造成的,我该如何解决?
答案 0 :(得分:0)
该错误的最常见来源是重新定义变量并隐藏实际变量时。 我看不到整个程序,但是我建议您确认是否在程序中重新定义了任何变量(主要是由于输入错误)。
一个很好的例子是:
for items in items:
// loop