json - Python - 如何更新 json 文件中的值?
问题描述
我讨厌 json 文件。它们笨重且难以处理:(请告诉我为什么以下方法不起作用:
with open('data.json', 'r+') as file_object:
data = json.load(file_object)[user_1]['balance']
am_nt = 5
data += int(am_nt['amount'])
print(data)
file_object[user_1]['balance'] = data
通过反复试验(以及许多打印语句),我发现它打开文件,转到正确的位置,然后实际上添加了 am_nt,但我无法更新原始 json 文件。请帮助我:( :(。我得到:
2000
TypeError: '_io.TextIOWrapper' object is not subscriptable
解决方案
json 使用起来很有趣,因为它类似于 python 数据结构。
错误是:object is not subscriptable
此错误针对此行:
file_object[user_1]['balance'] = data
file_object
不是可以像上面那样更新的 json/字典数据。因此错误。
尝试读取 json 数据:
data=json.load(file_object)
然后将数据作为 python 字典进行操作。并保存文件。
推荐阅读
- c# - DbContextOptionsBuilder.EnableSensitiveDataLogging 不做任何事情
- javascript - 无法在 javascript 上读取未定义的属性“长度”
- javascript - 如何解决我的 npm 包的“关键依赖项:依赖项的请求是一个表达式”错误?
- php - 更改 symfony/twig url helper 生成的主机(和端口)
- java - Date.toString() 在伦敦的纪元周围增加了一个小时
- spring - 我们在应用程序中同时使用 MassIndexer 和 Hibernate Search 中的手动索引是否正确?
- c# - 如何在瀑布对话框模型中集成 LUIS
- keras - 如何将 Keras 顺序 API 转换为函数式 API
- amazon-web-services - 即使在成功执行“create-invalidation”命令后,AWS CloudFront 也不会失效
- powerbi - 尝试在 Power BI 的数据视图中重新排序列