【发布时间】:2017-12-05 18:08:12
【问题描述】:
我有一本 2280 字节的字典,根据
sys.getsizeof(myDictionary)
当我用 pickle 将它保存到文件时
with open("dictionary.txt", "wb") as fp: #Pickling
pickle.dump(myDictionary, fp)
突然变成 100KB 大小
我是否可以获取该字典的确切二进制表示并将其保存到文件中? 然后再以字典的形式访问这个文件?
或者如果它不可能,也许它可以用另一种编程语言?使该文件尽可能小很重要
【问题讨论】:
-
使用
pickle而不是json.dump的任何具体原因? -
你的字典里有什么?在我的机器上,
getsizeof({1: [""]})与getsizeof({1: [s]})相同,其中 s 是一些非常大的字符串。 dict的大小可能与dict内容的大小无关,会体现在pickle输出的大小上
标签: python dictionary pickle