解决ModuleNotFoundError: No module named '_bz2'

在centos中运行某些程序会报错如下图所示:

  File "/usr/local/lib/python3.6.5/lib/python3.6/bz2.py", line 23, in <module>
    from _bz2 import BZ2Compressor, BZ2Decompressor
ModuleNotFoundError: No module named '_bz2'

该错误是缺失_bz2.cpython-36m-x86_64-linux-gnu.so这个os文件,处理步骤如下:

1)下载该文件https://pan.baidu.com/s/19EuNjLWIGPxc1R5C2ntUwg 提取码:q9ki 

2)将下载后的文件放到python3.6文件夹里…/python36/lib/python3.6/lib-dynload/目录下;

   使用"chmod +x _bz2.cpython-36m-x86_64-linux-gnu.so"增加该文件的可执行权限

3)再次运行程序可能还会报错:ImportError: libbz2.so.1.0: cannot open shared object file: No such file or directory

  1.首先需要使用sudo yum install -y bzip2* 确保系统已经安装了相关的库;

  2.此时会发现在/usr/lib64目录下会发现其实有libbz2.so.1.0.6这样一个文件,我们只需要在该目录下使用命令

"sudo ln -s libbz2.so.1.0.6 libbz2.so.1.0"创建一个该文件的软连接。

至此问题得到解决

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章