Добавление значений в файл json

#python-3.x

#python-3.x

Вопрос:

Я пытаюсь добавить ранее добавленные целые числа в файл json. для discord.py

 @client.command()
async def mine(ctx):
await open_account(ctx.author)

users = await get_wallet_data()

user = ctx.author


earnings = int(random.randrange(11))

em = discord.Embed(title = 'Mined NeoCoins')
em.add_field(name = 'Earnings:', value = earnings)
await ctx.send(embed = em)


wallet_amt = users[str(user.id)]['Wallet']
print(wallet_amt)
nw = wallet_amt =  earnings
nw = users[str(user.id)]['Wallet']
print(nw)


with open('wallet.json','w') as f:
    users =  json.dump(users,f)
  

Но я получаю то же самое значение. Не добавленное значение

Ответ №1:

Чтобы изменить значения .json файлов, вы должны сначала загрузить файл, внести изменения, а затем заменить файл измененной версией.

Загрузить файл:

 with open("filename.json", "w ") as fp:
    d = json.load(fp) #load the file as an object
  

Вносить изменения:

     ... #change the values in d
  

Замените файл измененной версией:

     fp.truncate(0) #empty the file
    json.dump(d, fp) #dump changed version into file
  

Полный код