警告命令Python 3.8

警告命令Python 3.8,python,pycharm,discord,discord.py,python-3.8,Python,Pycharm,Discord,Discord.py,Python 3.8,我试图发出警告命令,但失败了,所以我在这里请求有更多经验的人帮助我 这是我的代码(我没有使用json文件的经验) 我希望你能帮助我 @client.event async def on_member_join(member): warnsn = 0 with open('warns.json', 'r') as f: warns = json.load(f) warns[str(member)] = warnsn with open('warn

我试图发出警告命令,但失败了,所以我在这里请求有更多经验的人帮助我

这是我的代码(我没有使用json文件的经验)

我希望你能帮助我

@client.event
async def on_member_join(member):
    warnsn = 0
    with open('warns.json', 'r') as f:
        warns = json.load(f)

    warns[str(member)] = warnsn

    with open('warns.json', 'w') as f:
        json.dump(warns, f, indent=4)

@client.event
async def on_member_remove(member):
    warnsn = 0
    with open('warns.json', 'r') as f:
        warns = json.load(f)

    warns.pop(str(member))

    with open('warns.json', 'w') as f:
        json.dump(warns, f, indent=4)

@client.command()
async def warn(ctx, member: discord.Member=None, *, arg):
    warnsn = 0
    with open('warns.json', 'r') as f:
        warns = json.load(f)

    warns[str(member)] = warnsn + 1

    with open('prefixes.json', 'w') as f:
        json.dump(warns, f, indent=4)

    await ctx.send(f'{member} has been warned')

@client.command()
async def warns(ctx, member: discord.Member=None):
    warnsn = 0
    with open('warns.json', 'r') as f:
        warns = json.load(f)

    warns[str(member)] = warns
    await ctx.send(f'{member} has {warnsn} warns')

问题是每次将
warnsn
定义为0时,只需将1添加到JSON文件中的成员

@client.command()
异步定义警告(ctx,成员:discord.member=None,*,arg):
将open('warns.json','r')作为f:
警告=json.load(f)
警告[str(成员)]+=1
将open('prefixes.json','w')作为f:
dump(警告,f,缩进=4)
等待ctx.send(f'{member}已被警告')
@client.command()
异步def警告(ctx,成员:discord.member=None):
将open('warns.json','r')作为f:
警告=json.load(f)
warnsn=警告[str(成员)]
wait ctx.send(f'{member}有{warnsn}警告')

问题到底出在哪里?如果您对.json文件没有太多经验,请使用.txt文件,如果.json是硬文件,则更易于使用。谢谢您的回答