python:将json类型的字符串列表转换为字典列表

时间:2012-02-07 04:18:54

标签: python json

我有文件,其中每一行都是json字符串。我将此文件加载到字符串列表中。有没有办法将所有这些字符串转换为字典列表? json.loads()只能逐行转换。感谢


我找到了一种方法:L = list(expression for variable in sequence)

2 个答案:

答案 0 :(得分:3)

这应该做的工作:

result = None
with open("filename", 'r') as fh:
    result = [json.loads(line) for line in fh]

或者您可以使用map代替列表推导,如@JeffS所说

result = None
with open("filename", 'r') as fh:
    result = map(json.loads, fh)

答案 1 :(得分:0)

使用json模块加载JSON。 (2.6之前使用第三方simplejson模块,它具有相同的API。)

>>> import json
>>> f = open(‘json.file’,'r’)
>>> d = json.loads(f.read())
>>> print d

或使用旧的hack使用json和python dict语法之间的相似性,但是如果您确定json文件不包含json注释,则只使用此hack ..

f = open('json.file','r')
d = eval(f.read())
相关问题