我是discord.py和idk的noob什么';我的密码错了

我是discord.py和idk的noob什么';我的密码错了,discord.py,Discord.py,我每次发送meme bal或meme beg时都会出错。Idk发生了什么事,我不知道如何解决它。 这是我得到的错误: Ignoring exception in command bal: Traceback (most recent call last): File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 85, in wrappe

我每次发送meme bal或meme beg时都会出错。Idk发生了什么事,我不知道如何解决它。 这是我得到的错误:

Ignoring exception in command bal:
Traceback (most recent call last):
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 85, 
in wrapped
    ret = await coro(*args, **kwargs)
  File "main.py", line 90, in ball
    amt_in_vault = users[str(user.id)]['bank']
KeyError: 'bank'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/bot.py", line 903, 
in invoke
    await ctx.command.invoke(ctx)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 859, 
in invoke
    await injected(*ctx.args, **ctx.kwargs)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/ext/commands/core.py", line 94, 
in wrapped
    raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: KeyError: 'bank'
我是个新来的不和谐者,有人能帮我吗。我试着换了银行的名字,但还是没用。我真的不知道发生了什么。我在discord上的机器人也没有反应\

这是我的代码:

导入不一致
导入操作系统
随机输入
导入json
从discord.ext导入命令
TOKEN=os.getenv('TOKEN')
client=commands.Bot(command_prefix=“meme”)
@client.command()
异步def bal(ctx):
等待开户(ctx.author)
user=ctx.author
用户=等待获取保险库数据()
钱包金额=用户[str(user.id)]['wallet']
金库中的金额=用户[str(user.id)]['bank']
em=discord.Embed(title=f“{ctx.author.name}的平衡”,color=discord.color.red())
em.add_字段(name=“钱包余额”,value=钱包金额)
em.add_字段(name=“保险库余额”,value=保险库中的金额)
等待ctx.send(嵌入=em)
@client.command()
异步def beg(ctx):
等待开户(ctx.author)
用户=等待获取保险库数据()
user=ctx.author
收益=随机。随机范围(800)
等待ctx.send(str(random.choice(people)+“gived”+user.author+收益+“coins!”)
用户[str(user.id)]['wallet']+=收入
将open(“mainvault.json”、“w”)作为f:
json.dump(用户,f)
异步def未结帐户(用户):
用户=等待获取保险库数据()
如果用户中有str(user.id):
返回错误
其他:
用户[str(user.id)]={}
用户[str(user.id)]['wallet']=500
用户[str(user.id)]['bank']=0
将open(“mainvault.json”、“w”)作为f:
json.dump(用户,f)
返回真值
异步def get_vault_data():
将open(“mainvault.json”、“r”)作为f:
users=json.load(f)
返回用户
@客户端事件
_ready()上的异步定义:
打印(“登录成功”)
打印(client.user.name+'现在处于联机状态。“)
打印('----')
等待客户。更改状态(活动=不协调。活动(类型=不协调。活动类型。侦听,
name='Meme-前缀:Meme'))
client.run(令牌)

主Vault中的
json
缺少
主Vault中
用户
价值库。json
缺少
用户
价值库
主Vault中存储的每个用户下。json
没有
银行
键。换句话说,假设您试图获取一个JSON文件的
abc
键,该文件包含
{“123”:456,“xyz”:“abc”}
。这与您尝试执行的操作类似,只是键/值明显不同。您需要将存储用户银行金额的
mainvault.json
中使用的任何关键字名称更改为
bank
,或者您需要将
ament\u in_vault=users[str(user.id)]['bank']
更改为
amt\u in_vault=users[str(user.id)]['存储银行金额的关键字名称]
。我最好的猜测是您将金额存储在银行的
保险库
下。如果是这样,只需将其更改为
amt\u in_vault=users[str(user.id)]['vault']

在存储在
mainvault.json
中的每个用户下,没有
银行
键。换句话说,假设您试图获取一个JSON文件的
abc
键,该文件包含
{“123”:456,“xyz”:“abc”}
。这与您尝试执行的操作类似,只是键/值明显不同。您需要将存储用户银行金额的
mainvault.json
中使用的任何关键字名称更改为
bank
,或者您需要将
ament\u in_vault=users[str(user.id)]['bank']
更改为
amt\u in_vault=users[str(user.id)]['存储银行金额的关键字名称]
。我最好的猜测是您将金额存储在银行的
保险库
下。如果是这样,只需将其更改为
amt\u in\u vault=users[str(user.id)]['vault']