python-3.x - Python:如何将包含字典的列表从文本文件读取到列表对象
问题描述
我有一个文本文件。这是一个包含字典的列表列表。我如何实现这一目标?
[[
{'amount': 23418.945947265624, 'ID': 'ID:153572', 'loan': None, 'status': 'SUCCESS'},
{'amount': -106921.3234375, 'ID': 'ID:82295', 'loan': None, 'status': 'SUCCESS'},
{'amount': 52857.603124999994, 'ID': 'ID:102957', 'loan': None, 'status': 'SUCCESS'},
{'amount': 50788.3150390625, 'ID': 'ID:157364', 'loan': None, 'status': 'SUCCESS'},
{'amount': -93917.1078125, 'ID': 'ID:96633', 'loan': None, 'status': 'SUCCESS'}
]]
我尝试了以下方法:
with open('case1-gather_results.txt') as f:
lines = f.readlines()
testString = lines[0]
json_acceptable_string = testString.replace("'", "\"")
print(json_acceptable_string)
d = json.loads(json_acceptable_string)
将文件读取到列表中,并且这样做,我试图解析以下错误:
JSONDecodeError:期望值:第 1 行第 70 列(字符 69)
解决方案
from ast import literal_eval
with open('case1-gather_results.txt') as f:
d = literal_eval(f.read())
推荐阅读
- ssis - BIML 错误:无法解析对属性“属性”中的 OdbcSource12.SQLCommand 的引用。'' 是无效的
- html - 是否可以为一张特定图像使用物理像素而不是逻辑像素?
- sas - 将 SAS 代码转换为另一种语言,以变成独立的可分发 exe
- java - Spark SQL - java.lang.UnsupportedOperationException:转换列时为empty.init
- javascript - 客户端可以“等待”来自服务器的流吗?
- javascript - Firefox 不使用 getAllResponseHeaders 显示内容长度标头
- python - 有没有一种简单的方法可以在 vim 中反转 json 的漂亮打印?
- angular - Angular 2+ 中的 Jasmine 未找到规范
- javascript - 使用 toDataURL() 将画布保存为服务器上的图像时出现问题;
- unix - Rsync 和照片 Exif 数据