Python:Modulenotfounderror: No module named '_bz2'
阿新 • • 發佈:2018-12-15
在伺服器上安裝python3.6.5,之前用的沒什麼問題,今天使用matplotlib給出了報錯。
報錯內容:
from _bz2 import BZ2Compressor, BZ2Decompressor
ModuleNotFoundError: No module named ‘_bz2’
看了一堆些常見的解決教程,都不好用,後來看了了stackflow發現了問題:
linux下使用官方source release安裝會出現這個問題,而apt-get之類的則不會。
由於缺少root許可權,也沒有yum可以用,所以好多方法都不好用。直到看到這篇:
Linux下非Root使用者解決ImportError: No module named bz2
說白了少個檔案,它不一定叫bz2.so,但是大概是lib-dynload檔案下的含有bz2的so檔案,複製到自己的python的同名資料夾下就好了。
路徑全稱:…/python36/lib/python3.6/lib-dynload/
我找到的檔案叫:_bz2.cpython-36m-x86_64-linux-gnu.so
裡面-36m是版本對應的,也必須改,例如python3.5版本就應該叫-35m。
後記:我從伺服器python3.5裡面拿過來的,剛拿過來不好用,它一開始叫bz2.cpython-36m-x86_64-linux-gnu.so,
我自己用的python3.6,看了一眼目錄裡都是-36m的,改了一下名發現好用了。用在其它版本的請對應改名。