假设我需要一个由字典列表组成的数据库文件:
file:
[
{"name":"Joe","data":[1,2,3,4,5]},
{ ... },
...
]
我需要一个函数来接收如上所示的字典列表并将其附加到文件中。有什么方法可以实现这一点,比如使用 json (或任何其他方法),而不加载文件?
编辑1:
注意:我需要的是将新字典附加到光盘上已有的文件中。
您可以使用 json 转储字典,每行一个。现在,每一行都是您编写的一个 json 字典。您松开了外部列表,但可以通过简单的追加到现有文件来添加记录。
import json
import os
def append_record(record):
with open('my_file', 'a') as f:
json.dump(record, f)
f.write(os.linesep)
# demonstrate a program writing multiple records
for i in range(10):
my_dict = {'number':i}
append_record(my_dict)
该列表可以稍后组装
with open('my_file') as f:
my_list = [json.loads(line) for line in f]
该文件看起来像
{"number": 0}
{"number": 1}
{"number": 2}
{"number": 3}
{"number": 4}
{"number": 5}
{"number": 6}
{"number": 7}
{"number": 8}
{"number": 9}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)