错误场景: 在python 安装 pandas 和 sqlalchemy 以后,运行脚本时候,提示“No module named ‘_bz2’”
大致原因分析,对应环境同时安装了两个python3 环境(我这里是python 3.6 和 3.7 )对应安装库只安装到了 3.6环境下,导致 3.7环境下缺少对应的.SO文件。(报错的python 环境并不是系统默认的python3 环境)
解决方案 :
1. 确保安装了 对应的库 sudo apt-get install bzip2-devel
2. 找到对应的 bzip2 的 .so 文件 _bz2.cpython-36m-x86_64-linux-gnu.so,我的是在3.6环境下安装的因此位置在 /usr/lib/python3.6/lib-dynload/ 下
3. 将对应的 .so 文件 复制python3.7 对应的目录下(我的是/usr/local/lib/python3.7/lib-dynload/ 需要根据你自己安装的位置寻找) 并将文件名中“36m” 修改为 “37m” 即可
tips:(find命令) find (目录起点) -name 加上文件名 查找文件比较快
可以使用whereis python3 来找到系统默认的python 环境的位置。
来源地址:https://blog.csdn.net/bf96163/article/details/128654915