python3.7解决ModuleNotFoundError: No module named '_bz2'

安装完python3.7之后运行一个软件提示错误

    from _bz2 import BZ2Compressor, BZ2Decompressor

ModuleNotFoundError: No module named '_bz2'

解决方法如下:

一、(没试)

You need to install libbz2-dev package before install Python to build bz2 module.

apt-get install libbz2-dev

二、(没试)

You need to install libbz2-dev package before install Python to build bz2 module.

apt-get install libbz2-dev

三、(亲测)

看了一堆些常见的解决教程,都不好用,后来看了了stackflow发现了问题:

https://stackoverflow.com/questions/12806122/missing-python-bz2-module

linux下使用官方source release安装会出现这个问题,而apt-get之类的则不会。

由于缺少root权限,也没有yum可以用,所以好多方法都不好用。直到看到这篇:

Linux下非Root用户解决ImportError: No module named bz2

说白了少个文件,它不一定叫bz2.so,但是大概是lib-dynload文件下的含有bz2的so文件,复制到自己的python的同名文件夹下就好了。

路径全称:.../python37/lib/python3.7/lib-dynload/

我找到的文件叫:_bz2.cpython-35m-x86_64-linux-gnu.so

里面-35m是版本对应的,也必须改,例如:我的python3.7版本就直接重命名-37m

分享这个文件:https://github.com/wxh0000mm/ccdev-vision/blob/master/.fr-d0BNfn/django-jquery-file-upload/venv/lib/python3.5/lib-dynload/_bz2.cpython-35m-x86_64-linux-gnu.so


 

你可能感兴趣的:(PYTHON)