gpt4 book ai didi

python - 用 C 创建的 GDBM 数据库可以用 Python 打开吗?

转载 作者:太空宇宙 更新时间:2023-11-03 23:30:48 24 4
gpt4 key购买 nike

我有一个 Python 程序,我试图在其中使用 this rhyming dictionary查找韵律。

部分字典库设置由 C 程序创建三个 gdbm .db 文件。执行此操作的代码是公开可用的 here (来自“获取源代码”部分),C gdbm 构建器 compile.c 的关键部分如下所示:

#include <gdbm.h>

...<snip>...

int main(int argc, char *argv[]) {
FILE *input;
GDBM_FILE output;

...<snip>...

output = gdbm_open(argv[2], 0, GDBM_NEWDB, 0644, 0);

...<snip>...

gdbm_sync(output);

...<snip>...

words.db 已创建,可以从捆绑的命令行界面成功访问它。

根据 the library's example page ,我应该能够使用 python gdbm 模块访问数据库。

但是,我不能。当我运行以下命令时:

import gdbm
words = gdbm.open('/usr/share/rhyme/words.db')

我收到以下错误:

    words = gdbm.open('/usr/share/rhyme/words.db')
gdbm.error: Bad magic number

是否存在文件不兼容问题?一些用 C 创建的 gdbm 文件不能用 Python 打开吗?

(这是在 OSX 10.6.8 上使用 Python 2.7。Python 的 gdbm 是通过 MacPorts 安装的)

最佳答案

您是如何创建 words.db 文件的?看起来 words.db 已损坏或格式不受 Mac OS X 上特定版本的 gdbm 库支持。

关于python - 用 C 创建的 GDBM 数据库可以用 Python 打开吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16005686/

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