我有一个表格的制表符分隔文件:
123 91860 Sun Mar 16 08:06:25 +0000 2014 feeling terrible.
789 12139 Sun Mar 16 09:01:07 +0000 2014 children are the blessing of god.
现在我想把这个文件写成一个像这样的json对象:
{"data": [{"text": "feeling terrible.","id": 123},{"text": "children are the blessing of god","id": 678}]}
我想在python中编写代码:
import json
f=open("tree_0","r")
for line in f:
lines=line.split('\n')
data=lines[0].split("\t")
id=str(data[0])
text=str(data[3])
请告诉我如何在json中转储id和文本,以便获得所需的输出。
答案 0 :(得分:4)
您可以执行以下操作:
import json
data={}
with open('data.txt', 'w') as outfile,open("tree_0","r") as f:
for line in f:
sp=line.split()
data.setdefault("data",[]).append({"text": sp[-1],"id": sp[0]})
json.dump(data, outfile)
您需要的只是循环遍历您的行并将其拆分,然后创建您期望的词典。您可以使用dict.setdefault
方法执行此任务。
然后使用json.dump
将您的数据写入文件!