使用python在文件中存储字典(哈希)的有效方法?

时间:2010-09-16 07:26:40

标签: python file dictionary serialization

我正在实现一个需要在磁盘上存储哈希的Unix用户空间工具。每次运行程序都会读取哈希值,非常频繁。哈希只需要存储“name:path”值。

我查看了用于python的bsddb标准库模块,但我可以看到它将在Python 3中弃用。我还看到了pickle标准库模块。

我不是蟒蛇人,那么哈希序列化和频繁打开/读取/关闭操作的有效方法是什么?

3 个答案:

答案 0 :(得分:5)

我会从shelve模块开始,看看它是不是太慢了。它完全符合您的要求。

import shelve

d = shelve.open('filename')

d['name'] = 'path'

d.close()

或从中读取

d = shelve.open('filename')

d = hash['name']

它本质上是一个提供字典抽象的pickle包装器。

答案 1 :(得分:0)

我会使用泡菜,看看它是否足够快以满足您的需求。

答案 2 :(得分:0)