我正在创建一个制裁系统,其中保存一个随机 ID,将用户的 ID 作为种子,并将其保存在 json 中,如下所示,但是在激活命令时,我收到此错误:命令生成异常:AttributeError: object “str”没有属性“id”
@commands.command()
async def warn(self, ctx, member: discord.Member, *reason):
if reason == ():
reason = "Sin razón"
reason = ' '.join(reason)
timestamp = datetime.datetime.now()
member = str(member.id)
desordenar = random.sample(member, 18)
idsancion = ''.join(desordenar)
user = {}
user[f"{idsancion}"] = {"Tiempo":f"{timestamp}","Sanción":"Warn","Staff":ctx.author.id, "Razón":f"{reason}"}
with open("json/sanciones/{user}.json".format(user=member.id), "w") as f:
json.dump(user, f, indent=4)
最佳答案
您在此行中将变量成员设置为字符串:
member = str(member.id)
所以你在这里得到错误:with open("json/sanciones/{user}.json".format(user=member.id), "w") as f:
json.dump(user, f, indent=4)
将以上更改为with open("json/sanciones/{user}.json".format(user=member), "w") as f:
json.dump(user, f, indent=4)
关于python - 命令引发异常 : AttributeError: 'str' object has no attribute 'id' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67224091/