因此,我使用Python3在Google上有了我的笔记本(我将实现一些深度学习库,例如: Keras、TF、Flair、OpenAI.)所以我真的很想继续使用Python 3,而不是切换到2。
但是,我有一个要打开/读取的.db文件,脚本是用Python2编写的,因为它们使用的是bsddb库(这是不推荐的,不能在Python3上工作)
self.term_to_id = bsddb.btopen(resource_prefix + '_term_to_id.db', 'r')我尝试修改Python 2文件,使其在Python 3上兼容,这样我就可以将它作为一个模块导入到我的Google笔记本中,我尝试了这样做:
!pip install berkeleydb,以便以后可以这样做,只需将bsdbb更新为bsdbb3,但是在安装!pip install berkeleydb时,我会得到以下错误:H 212G 213错误:无法找到满足berkeleydb要求的版本(来自版本: 18.1.0、18.1.1、18.1.2、18.1.3、18.1.4):没有为berkeleydb找到匹配的发行版
2)我想也许我可以将依赖关系从python 2文件导入到我的Python3笔记本上,但正如预期的那样,它无法工作,因为它在Python2文件中不识别'import bsdbb'。
有什么建议可以让它在Google Colab上发挥作用吗?
发布于 2021-11-09 12:39:12
berkeleydb只是在C/C++中创建的数据库BerkeleyDB上的Python。
当我试图在本地系统Linux上安装它时,我会看到
FileNotFoundError: [Errno 2] No such file or directory: 'src/Modules/berkeleydb.h'这意味着它试图编译一些C/C++代码。
这通常需要安装带有C/C++头(文件.h)的带有后缀-dev的特殊包。
使用
!apt search Berkelay我发现已经安装了libdb5.3,所以我安装了libdb5.3-dev。
!apt install libdb5.3-dev在此之后,Python可以安装berkeleydb
这在Colab上适用于我
!apt install libdb5.3-dev
!pip install berkeleydb
import berkeleydb as bsddbhttps://stackoverflow.com/questions/69897261
复制相似问题