Falsetru 是正确的,我将针对那些不熟悉的人(linux 指令)进行更详细的介绍。如果您收到此错误,则很可能您使用的 python 版本是在没有正确标头的情况下编译的。这是对其进行排序的分步指南。 (Python 3.X.X 指令)
- 安装所需的sqlite库
sudo apt-get install libsqlite3-dev
- 卸载 python (我在本指南中使用 python 3.6.5 作为示例)
sudo apt-get remove python3.6
- 从源代码下载 python
cd /tmp && wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
- 解压存档
tar -xvf Python-3.6.5.tgz
- 配置
cd Python-3.6.5 && ./configure
- 制作并安装(并在使用时去煮咖啡)
make && sudo make install
如果你正确执行了所有操作,运行“python3.6 -V”应该会给你你的Python版本。请注意,您还必须重建您拥有的所有虚拟环境。
您可能会遇到的最后一个警告。
zipimport.ZipImportError: can't decompress data; zlib not available
如果您没有安装以下 zlib 库,就会发生这种情况:
sudo apt-get install zlib1g-dev