No module named '_bz2'

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

File "/usr/local/lib/python3.6.5/lib/python3.6/bz2.py", line 23, in
from _bz2 import BZ2Compressor, BZ2Decompressor
ModuleNotFoundError: No module named '_bz2'
该错误是缺失_bz2.cpython-36m-x86_64-linux-gnu.so这个os文件,处理步骤如下:

1)下载该文件,放到python3.6文件夹里…/python36/lib/python3.6/lib-dynload/目录下;

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

2)再次运行程序可能还会报错: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"创建一个该文件的软连接。

至此问题得到解决

原文地址:https://www.cnblogs.com/Afrafre/p/15624055.html