最近在跑cnn,代码中需要引用到 curses库。我是在windows环境下进行编写的,除去在学习过程中的各种错误之后,代码仍然运行出错。报这样的错误:
首先这个问题产生的 根本原因 是 curses 库不支持 windows。所以我们在下载完成python后(python 是自带 curses 库的),虽然在 python目录\Lib 中可以看到 curses 库,但其实我们是不能使用的。会产生如上的错误。在提示的文件 __init__ 文件中也确实可以找到 from _curses import * 这句话。
要解决这个问题,我们就需要使用一个 unofficial curses(非官方curses库)来代替 python 自带的curses库。也就是 whl 包。
用我自己的例子,我下载的是 python3.5.1 版本,在 python whl包下载 中找到 curses ,然后下载与自己python版本对应的 whl 包(如我的就是 curses-2.2-cp35-cp35m-win_amd64.whl),我是windows10-64bit,需要下载 amd64 的版本,但是具体下载哪个版本可以测试一下,只要经测试发现使用那个版本时在安装的时候会报一个环境不支持的错误就对了。
我用的一直是anaconda库,直接切入tensorflow环境,然后d到下载的whl的目录(如我的 F:\)。直接输入命令 :pip install curses-2.2-cp35-cp35m-win_amd64.whl。然后等待安装成功。
因为我的是在anaconda库下,所以很多包都有,如果直接是裸python的话,安装不成功,可以尝试:先安装一下 wheel 库再安装 whl:pip install wheel。(wheel是和pip一样的工具,可以在 Python\Scripts 目录下查看)
reference:
https://www.jianshu.com/p/953b3a738ee0