Python 不和谐经济体系

Python 不和谐经济体系,python,discord,discord.py,Python,Discord,Discord.py,有人能帮我吗?我试图编写一个经济系统机器人,但它不起作用。当我试图执行命令时,它只会给我一个很长的错误。代码如下: 导入不一致 从discord.ext导入命令 导入json 导入操作系统 随机输入 chdir(“C:\\Users\\user\\Desktop\\PythonEconomyBot”) client=commands.Bot(command_prefix=“eco”) @客户端事件 _ready()上的异步定义: 打印(“机器人在线!”) @client.command() 异步

有人能帮我吗?我试图编写一个经济系统机器人,但它不起作用。当我试图执行命令时,它只会给我一个很长的错误。代码如下:

导入不一致
从discord.ext导入命令
导入json
导入操作系统
随机输入
chdir(“C:\\Users\\user\\Desktop\\PythonEconomyBot”)
client=commands.Bot(command_prefix=“eco”)
@客户端事件
_ready()上的异步定义:
打印(“机器人在线!”)
@client.command()
异步def余额(ctx):
等待开户(ctx.author)
user=ctx.author
用户=等待获取银行数据()
钱包金额=用户[str(user.id)][“钱包”]
银行金额=用户[str(user.id)][“银行”]
em=discord.Embed(title=f“{ctx.author.name}的Kontostand”,color=discord.color.red())
em.add\u字段(name=“Wallet”,value=Wallet\u amt)
em.add\u字段(name=“Bank”,value=银行金额)
等待ctx发送(em)
@client.command()
异步def beg(ctx):
等待开户(ctx.author)
user=ctx.author
用户=等待获取银行数据()
收益=随机。随机范围(101)
等待ctx.send(f“Jemand gab dir{earnings}Moneten!”)
用户[str(user.id)][“钱包”]+=收入
以open(“mainbank.json”、“w”)作为f:
json.dump(用户,f)
异步def未结帐户(用户):
用户=等待获取银行数据()
如果用户中有str(user.id):
返回错误
其他:
用户[str(user.id)]={}
用户[str(user.id)][“钱包”]=0
用户[str(user.id)][“银行”]=0
以open(“mainbank.json”、“w”)作为f:
json.dump(用户,f)
返回真值
异步def get_bank_data():
以open(“mainbank.json”、“r”)作为f:
users=json.load(f)
返回用户
client.run(“我的令牌”)
我真的不知道我做错了什么,但我对discord.py模块没有太多经验,所以如果有人能帮助我,那就太好了

Here's the Error: File 
"C:\Users\user\AppData\Local\Programs\Python\Python36\lib\site- 
packages\discord\ext\commands\bot.py", line 902, in invoke
await ctx.command.invoke(ctx)
File "C:\Users\user\AppData\Local\Programs\Python\Python36\lib\site- 
packages\discord\ext\commands\core.py", line 864, in invoke
await injected(*ctx.args, **ctx.kwargs)
File "C:\Users\user\AppData\Local\Programs\Python\Python36\lib\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: 
JSONDecodeError: Expecting value: line 1 column 1 (char 0)

如果您不将JSON文件放入另一个文件夹,您可以删除
os.chdir
路径,它将被找到

快速提示:路径通常具有以下格式:
C:/Users/user/…

虽然您在以下行中犯了一个小错误,但代码在我看来很好:

等待ctx.send(em)
如果要发送嵌入,必须始终定义它,因此正确的行是:

em=discord.Embed(title=f“{ctx.author.name}的Kontostand”,color=discord.color.red())
em.add\u字段(name=“Wallet”,value=Wallet\u amt)
em.add\u字段(name=“Bank”,value=银行金额)
等待ctx.send(嵌入=em)#添加嵌入
我还建议您始终将函数置于命令/实际代码之上:

导入不一致
从discord.ext导入命令
导入json
随机输入
异步def未结帐户(用户):
用户=等待获取银行数据()
如果用户中有str(user.id):
返回错误
其他:
用户[str(user.id)]={}
用户[str(user.id)][“钱包”]=0
用户[str(user.id)][“银行”]=0
以open(“mainbank.json”、“w”)作为f:
json.dump(用户,f)
返回真值
异步def get_bank_data():
以open(“mainbank.json”、“r”)作为f:
users=json.load(f)
返回用户
@client.command()
记住将
{}
放入JSON文件中。在运行命令之前,它应该如下所示:

{
}

请添加错误,像“Please help me”这样的问题对于StackOverflow来说太宽泛了,请查看编辑过的问题,很抱歉,执行命令后是否会出现错误?是的,当我尝试执行平衡时,会出现错误尝试在下面添加一个“r”:os.chdir(r“C:\\Users\\user\\Desktop\\PythonEconomyBot”)不起作用,仍然给我相同的错误这也适用于其他命令吗?是的,当我尝试执行beg时,它会给我相同的错误用JSON示例编辑我的答案,这有帮助吗?不,我的JSON就是这样,两个带空格的花括号在中间