python3 pandas模块import报错 ModuleNotFoundError: No module named '_bz2'
前言全局说明
python3 pandas模块import报错 ModuleNotFoundError: No module named '_bz2'
一、环境
ubuntu 18.04
Python 3.8.17
二、报错内容
>>> import pandas Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/qt/.local/lib/python3.8/site-packages/pandas/__init__.py", line 22, in <module> from pandas.compat import is_numpy_dev as _is_numpy_dev # pyright: ignore # noqa:F401 File "/home/qt/.local/lib/python3.8/site-packages/pandas/compat/__init__.py", line 24, in <module> import pandas.compat.compressors File "/home/qt/.local/lib/python3.8/site-packages/pandas/compat/compressors.py", line 7, in <module> import bz2 File "/usr/local/python3817/lib/python3.8/bz2.py", line 19, in <module> from _bz2 import BZ2Compressor, BZ2Decompressor ModuleNotFoundError: No module named '_bz2'
三、网上解决方法
第一种:将其他目录有的 so 复制到 当前版本的目录下 第二种: 重新编译python源码,在安装
四、解决方法
刚开始,使用上面方法一不成功,正准备用方法二的时候,无意发现编译时候发现是so文件名版本里,不带m,把之前复制过去的带m的名字去掉就成功了。
4.1 查找python3的安装路径
whereis python3817
/usr/bin/python3817 是软连接
4.2 确认版本名
注意:在 3.6 中,文件名里是 36m
注意:在3817版本里,文件名是 38 不带m (我就是在这多写了个m导致不成功)
文件名里,带不带m看看目录里,其他文件名就行。
4.3 复制文件
sudo cp /usr/lib/python3.6/lib-dynload/_bz2.cpython-36m-x86_64-linux-gnu.so /usr/local/python3817/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so chmod 755 /usr/local/python3817/lib/python3.8/lib-dynload/_bz2.cpython-38m-x86_64-linux-gnu.so
免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。
参考、来源:
https://www.cnblogs.com/wutou/p/17525439.html (python 编译命令)
https://blog.csdn.net/Tracy_Yuan2014/article/details/124969193 (lib-dynload)
https://blog.csdn.net/weixin_42587961/article/details/105779549 (另外采用直接拷贝_bz2.cpython-38-x86_64-linux-gnu.so并不能解决问题)
https://www.cnblogs.com/hengdin/articles/16277050.html (在 configure 的过程中,会根据机器是否安装了 bzip2 来开启_bz2 模块. 不能导入_bz2 的原因是 python 解释器的内建模块没有支持 bz2)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
2022-04-15 xshell和xftp关联自动联动