我有一个在 OS X 上用 python 2.7.2 开发的应用程序。我使用模块搁置,似乎在 mac 上默认为 bsddb。该程序不会在装有 ActiveState python 2.7 的 Windows 7 机器上运行,因为模块 bsddb 不存在并且不在 ActiveState 的包管理器 (pypm) 中。ActiveState 的文档说在 v 2.6 中已弃用。我猜它会尝试 bdddb,因为创建 DB 的 OS X python 默认为 bsddb。当我删除搁置数据库并在 Windows 上运行它时,它愉快地使用了其他一些底层数据库。Mac的python也很开心。
所以我认为我应该强制使用非 bdsdb 后端进行搁置。就像 gdbm 模块一样。但我不知道该怎么做。