Anaconda prompt下载模块失败解决方案

 有些小众的module会在直接使用conda prompt的conda install XXX的时候失败,错误原因也是繁多的,在查询网上现有资料后我发现无解,所以自己摸索了许久,现整理如下(以snapvx、cvxpy、scs为例)。
Anaconda prompt下载模块失败解决方案_第1张图片
解决方案

  1. 检查电脑系统环境。比如有些模块的documentation直接说明系统要求是windows 64位,那么即便安装模块成功,import的时候也会出现诸如下面的警告。
    在这里插入图片描述
    由于很多第三方的包实际上基于C、C++等基础的编程语言,会要求安装Visual Studio 2012, Visual Studio C++ compiler等软件,按照documentation的说明安装即可。
  2. 参考模块的documentation中关于手动安装的说明。有些包会有单独的网站,比如http://snap.stanford.edu/snapvx/,有些包有github的repo,有些二者皆有。两个平台提供的documentation和源代码会有文件形式、语言版本的不同,按照需要选择即可。
    比如windows的系统可以下载压缩包,解压之后的文件放在C盘的某个位置。使用cmd.exe安装,首先更改cmd.exe的根目录地址。cmd无法更改为D盘等非系统盘,示例中我使用的是ProgramData\snapvx-master文件夹,具体文件夹可以自由选择。 按照documentation的提示,我对setup.py文件进行操作,要求当前根目录中有setup.py文件即可。个人理解setup.py文件的工作机制就是将同目录下的snapvx.py文件复制到对应的python的Lib文件夹中,同时生成其他相关文件。
cd .. #根目录变为上一级文件夹
cd PraogramData\snapvx-master #根目录更改为子文件夹ProgramData
python setup.py install #最后安装

 如果最后一行代码运行后cmd.exe中出现报错,可以直接看原来的XXX.py(本例是cvxpy.py)文件的代码,比如出现代码

if Verbose:
    print 'Serial ADMM'

 这是python2的代码,然而我使用python3.7,所以我找到github上的文档,终于是支持python3.7的。

 总之,手动安装是无奈的下下策,与conda下载相比会麻烦很多,需要注意可能出现的若干问题,不少问题只能自己想办法解决。

  1. 使用conda里面的pip
     scs模块就出现了conda install失败,到github上找没有提供手动安装的说明,因而我尝试性地使用pip install scs,反而因此成功了。

你可能感兴趣的:(Python)