头图来自 Carbon
问题起源于一次代码参考。
花了大量精力看完了代码,就在我颤抖着按下 F5 的那一刻……
ModuleNotFoundError: No module named '_curses'
我:???
先试着
pip3 install curses
好家伙,竟然找不到这个包!
我想起之前用 Windows
时也有过这个问题,但之前用 Linux
时并没有这个问题啊。难道这台机子体质特殊?
上网查吧,网上找了一圈都是win平台的解决方法。
好歹最后问题还是解决了,就把解决方法记录一下。
Windows 平台解决方案
直接去这个链接 -> https://www.lfd.uci.edu/~gohlke/pythonlibs/#curses 下载对应平台和 CPU 架构的 whl 包,运行
pip install *.whl
安装即可。
Linux 平台解决方案
这里问题比较大,可能是缺少了相关库,得先安装。
sudo apt install libncurses5 libncurses5-dev libncursesw5
然后下载对应版本的 Python
源码,我是3.8.2
wget -c https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz
tar zxvf Python-3.8.2.tgz
cd Python-3.8.2
编译一下
./configure
make
可能要root权限。
编译完成后,到 build
目录中,会发现有三个文件夹,进入那个以 lib 开头的文件夹,将里面两个文件名中带 curses
的.so文件复制到 /usr/local/lib/python3.8/lib-dynload/
目录中,搞定。
参考资料
[Python]CentOS - ImportError: No module named ‘_curses’ - oDoraemon - 博客园