我有一个生成大型 python 字典的 python 脚本(脚本 1)。这本字典必须由另一个脚本(脚本 2)读取。任何人都可以建议我编写由脚本 1 生成并由脚本 2 读取的 python 字典的最佳方法。过去我使用 cPickle 来编写和读取如此大的字典。有没有更好的方法来做到这一点?
问问题
3965 次
2 回答
7
shelve
将让您分别访问每个项目,而不是要求您每次都序列化和反序列化整个字典。
于 2012-08-17T05:11:55.397 回答
4
如果您希望您的字典可以被不同类型的脚本(即不仅仅是 Python)读取,那么JSON也是一个不错的选择。
它不如shelve
.
import json
with open("/tmp/test.json", "w") as out_handle:
json.dump(my_dict, out_handle) # save dictionary
with open("/tmp/test.json", "r") as in_handle:
my_dict = json.load(in_handle) # load dictionary
于 2012-08-17T05:25:43.377 回答