我对 Python 2.5 有疑问。首先,我以列表格式保存一个文件,如下所示:
list_f = open("list.txt", "w")
list = [{"a" : "b", "c" : 100}, {"a" : "c", "c" : 101}]
print >> list_f, list
所以,我们得到一个像这样的 list.txt:
[{'a' : 'b', 'c': 100}, {'a' : 'c', 'c' : 101}]
这是文件中唯一的一行。请注意,列表中有两个 dict 对象,每个 dict 都有一个 String 值和一个 integer 值。
我的问题是如何加载文件并重新创建一个列表对象作为前一个。
最佳答案
您可以使用 ast.literal_eval()
恢复对象,但实际上您应该使用一些合理的序列化格式,例如 JSON 或 Python 的泡菜模块。
例子:
# JSON
import json
# saving
with open("a.json", "w") as f:
json.dump(obj, f)
# loading
with(open("a.json") as f:
obj = json.load(f)
对于 pickle,将每次出现的 json
替换为 pickle
。
关于python - 如何在 Python 中将文件加载为 List 类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11651553/