完美解決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