我想更新的.json文件具有以下结构:
{
"username": "abc",
"statistics": [
{
"followers": 1234,
"date": "2018-02-06 02:00:00",
"num_of_posts": 123,
"following": 123
}
]
}
我想让它插入一个新的统计数据
{
"username": "abc",
"statistics": [
{
"followers": 1234,
"date": "2018-02-06 02:00:00",
"num_of_posts": 123,
"following": 123
},
{
"followers": 2345,
"date": "2018-02-06 02:10:00",
"num_of_posts": 234,
"following": 234
}
]
}
与
with open(filepath, 'w') as fp:
json.dump(information, fp, indent=2)
该文件将总是被覆盖。但是我想把统计的项目加进去。我尝试了许多可能的方式阅读文件,并在之后追加它,但它从来没有工作。
数据将写入信息变量中,就像
information = {
"username": username,
"statistics": [
{
"date": datetime.now().strftime('%Y-%m-%d %H:%M:%S'),
"num_of_posts": num_of_posts,
"followers": followers,
"following": following
}
]
}
那么,我如何更新.json文件,我的信息被正确添加?
4条答案
按热度按时间cnwbcb6i1#
您可能希望沿着以下操作:
9wbgstp72#
您需要读取
.json
文件,然后追加新的数据集并转储该数据。查看代码。kh212irz3#
你可以使用这个函数:
kjthegm64#
通常情况下,您不会直接更新正在阅读的文件。
您可以考虑:
1.从源文件读取。
1.做处理
1.写入新的临时文件
1.关闭源文件和临时文件
1.将临时文件重命名(移动)回源文件