完美解决Ubuntu使用pandas报ModuleNotFoundError: No module named '_bz2'


最近在Ubuntu中使用pandas库的时候,出现了一个问题,Google了好久最终是解决了。记录一下解决的步骤

首先安装Ubuntu依赖

 

 

 

    rpm -ivh zlib-1.2.7-19.el7_9.x86_64.rpm –replacefiles

    rpm -ivh zlib-devel-1.2.7-19.el7_9.x86_64.rpm –replacefiles

解压python源码文件,并进入
$ sudo tar -zxvf Python-3.7.9.tgz
$ cd Python-3.7.9/
编译文件安装
$ sudo ./configure
$ sudo make
$ sudo make install
然后使用该python创建一个python虚拟环境
./python -m venv myvenv
进入虚拟环境并安装pandas库
$ source venv/bin/activate
$ pip3 install pandas
修改软连接which python
ln -s /usr/local/python3.9/bin/python3.9 /usr/bin/python3
删除/usr/bin/python3
创建新连接

  

 

 

查看import 报错

ModuleNotFoundError: No module named '_bz2'

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

1)下载该文件: https://pan.baidu.com/s/1iPuEBYnUABWf94QM9fQZgQ 提取码: nw2g

2)将下载后的文件放到python3.8文件夹里/usr/local/python/lib/python3.8/lib-dynload/目录下;

在lib-dynload目录下使用"chmod +x _bz2.cpython-38-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"创建一个该文件的软连接。

报错:

UserWarning: Could not import the lzma module. Your installed Python is incomplete. Attempting to use lzma compression will result in a RuntimeError.

安装

backports.lzma-0.0.14安装

python3  setup.py install

xz-5.2.5安装

$ sudo ./configure
$ sudo make
$ sudo make install

在执行

pip3 install --no-index --find-links=../pip -r requirements.txt


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM