【问题标题】:Writing JSON in Python用 Python 编写 JSON
【发布时间】:2015-03-17 09:29:09
【问题描述】:

我想在员工每次打卡时附加到他们的历史记录。我已经在 python 中附加,但无法将它写回 JSON 文件。

import json

json_data = open("app.json")
data = json.load(json_data)

for d in data['employees']:
        d['history'].append({'day': 01.01.15, 'historyId': 44, 'time': 12.00})
        json.dump(d['history'])

【问题讨论】:

  • 1) 向我们展示输入 app.json。 2)你有什么错误吗? 3) 01.01.15 是什么意思?
  • 也许如果你得到一个你不明白的错误TypeError: dump() takes at least 2 arguments (1 given),你应该考虑阅读the docs

标签: python json


【解决方案1】:

json.dump() 接受 两个 参数,即要转储的 Python 对象和要写入的文件。

先进行更改,然后循环之后,重新打开文件进行写入并写出整个data对象:

with open("app.json") as json_data:
    data = json.load(json_data)

for d in data['employees']:
    d['history'].append({'day': 01.01.15, 'historyId': 44, 'time': 12.00})

with open("app.json", 'w') as json_data:
    json.dump(data, json_data)

这实质上是用 JSON 序列化的新数据结构替换文件内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-25
    • 2011-04-26
    • 2012-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多