我有一个包含多个词典的文件,
newfile = {"votes": {"funny": 0, "useful": 5, "cool": 2}, "user_id": "rLtl8ZkDX5vH5nAx9C3q5Q", "review_id": "fWKvX83p0-ka4JS3dc6E5A", "stars": 5, "date": "2011-01-26"}
{"votes": {"funny": 0, "useful": 0, "cool": 0}, "user_id": "0a2KyEL0d3Yb1V6aivbIuQ", "review_id": "IjZ33sJrzXqU-0X6U8NwyA", "stars": 5, "date": "2011-07-27"}
此文件存储在我的驱动器中,我需要逐行从文件中读取每个记录,并希望为每个键(例如
print newfile['votes'] = {"funny": 0, "useful": 5, "cool": 2} for first line
print newfile['votes'] = {"funny": 0, "useful": 0, "cool": 0} for second line
答案 0 :(得分:1)
首先,逐行读取文件,例如:https://stackoverflow.com/a/3277512/141789
然后,将文本解析为json字符串(假设各行采用有效的json格式,如果不是这样,您的问题就会变得更加困难)。
import json
dicts = []
for line in array:
dicts.append(json.loads(line))
如果整个文件为json格式,则更加简单。在这种情况下,它看起来像[{...},{...}]
。即字典被括在方括号(字典列表)中,并用逗号分隔。
只需查找“从json读取”,您将找到大量示例,可以读取该信息