python - 如何在 Python 中将文件加载为 List 类型?

标签 python string list

我对 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/

相关文章:

Python - 具有动态表名的 MySQL SELECT 查询

python - 将 CSV 中的字符串交换为日期时间 (Python)

C 字符串传递

python - 并行迭代文档行

python - 如何在 Python 中使用保留字的变量名

python - Python 中最长的递增子序列(For vs While 循环)

c - 在函数中修改字符串 (char*) 后,除非在函数内部打印,否则该值不会显示

python - 如何跳过列表中没有持有元组的人?

list - 何时选择容器/列表而不是 slice

python - 在 Python 中将列表转换为元组