如何从文本文件中获取包含字典条目的列表?

How to get a list with dict entries from text file?

我将包含字典条目的列表保存到 txt 文件中。

当我尝试用

将它读回python时
data = open("my_saved_data.txt","r")

我刚得到一个巨大的字符串,如下所示:

[{key1:"value",key2:"value"},{key1:"value",key2:"value"},{key1:"value",key2:"value"}]

有什么简单的方法可以将其恢复为原始格式?

你想要的是“Convert a String to JSON”,但是你的文件内容的类型不是JSON,因为JSON中的key应该用double括起来报价。

正确的内容应该是这样的:

[{"key1":"value","key2":"value"},{"key1":"value","key2":"value"},{"key1":"value","key2":"value"}]

然后我们可以将其转换为原始格式:

with open("my_saved_data.txt","r") as f:
    data = f.read()

print(data)
# '[{"key1":"value","key2":"value"},{"key1":"value","key2":"value"},{"key1":"value","key2":"value"}]'

import json
json.loads(data)
#[{'key1': 'value', 'key2': 'value'},
# {'key1': 'value', 'key2': 'value'},
# {'key1': 'value', 'key2': 'value'}]

请确认您在str中的key是否包含在内,如果没有,我们可以将其包含在:

with open("my_saved_data.txt","r") as f:
    data = f.read()

data.replace('key1','"key1"').replace('key2','"key2"')