该shelve
模块是在模块之上实现的anydbm
。该模块充当 4 种不同特定 DBM 实现的外观,它会在创建新数据库时选择第一个可用的模块,顺序如下:
dbhash (已弃用但仍是
anydbm
首选)。这是bsddb
模块的代理,.open()
真的bsddb.hashopen()
gdbm,用于 GNU DBM 库的 Python 模块,提供的功能比
dbm
与同一个库一起使用时模块所能提供的功能更多。dbm,一个使用
ndbm
BSD DB 和 GNU DBM 库(在编译 Python 时选择)的代理模块。dumbdbm,一个纯 python 实现。
但是在我的系统中,尽管dbhash
出于某种原因我希望它只使用dumbdbm
.
我怎样才能做到这一点?