gpt4 book ai didi

python - 我需要一个类来创建位于磁盘上的字典文件

转载 作者:行者123 更新时间:2023-11-30 23:56:26 26 4
gpt4 key购买 nike

我想创建一个非常非常大的字典,并且我想将它存储在磁盘上,以免占用我的内存。基本上,我的需求是 cPickle 和 dict 类之间的交叉,因为它是 Python 视为字典的类,但恰好存在于磁盘上。

我的第一个想法是围绕一个简单的 MySQL 表创建某种包装器,但我必须将类型存储在 MySQL 甚至不希望支持开箱即用的结构条目中。

最佳答案

最简单的方法是 shelve模块,其工作方式几乎与字典完全相同:

import shelve
myshelf = shelve.open("filename") # Might turn into filename.db
myshelf["A"] = "First letter of alphabet"
print myshelf["A"]
# ...
myshelf.close() # You should do this explicitly when you're finished

请注意 module documentation 中的注意事项关于更改存储在架子上的可变值(列表、字典等)(可以,但需要更多的摆弄)。它在底层使用 (c)pickle 和 dbm,因此它会愉快地存储您可以 pickle 的任何内容。

我不知道它相对于其他解决方案的性能如何,但它不需要任何自定义代码或第三方库。

关于python - 我需要一个类来创建位于磁盘上的字典文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4233923/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com