Python中最近使用conda创建环境好用吗?
本来以为 GFW 是暂时性的抽疯,封了 Anaconda 的官网,结果貌似封了两个月,现在只能靠着 proxychains 来做更新。
4 月之前创建一个 conda 环境,下载包的时候本来就慢,优化点是 channle 添加国内 但是 4 月之后,在创建开发环境的时候,就各种报超时,都到不了下载包那一步。
比如
conda create -name py3test python=3
执行结果
Fetching package metadata …
CondaHTTPError: HTTP None None for url <https://conda.anaconda.org/conda-forge/osx-64/repodata.json>
Elapsed: None
An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.
ConnectionError(MaxRetryError(“HTTPSConnectionPool(host=‘conda.anaconda.org’, port=443): Max retries exceeded with url: /conda-forge/osx-64/repodata.json (Caused by NewConnectionError(’<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x10fb9e410>: Failed to establish a new connection: [Errno 65] No route to host’,))”,),)
本机的 conda info 如下
platform : osx-64
conda version : 4.3.21
conda is private : False
conda-env version : 4.3.21
conda-build version : 0+unknown
python version : 2.7.12.final.0
requests version : 2.14.2
root environment : /Users/chenxi/anaconda (writable)
default environment : /Users/chenxi/anaconda
envs directories : /Users/chenxi/anaconda/envs
/Users/chenxi/.conda/envs
package cache : /Users/chenxi/anaconda/pkgs
/Users/chenxi/.conda/pkgs
channel URLs : https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/osx-64
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch
https://conda.anaconda.org/conda-forge/osx-64
https://conda.anaconda.org/conda-forge/noarch
https://repo.continuum.io/pkgs/free/osx-64
https://repo.continuum.io/pkgs/free/noarch
https://repo.continuum.io/pkgs/r/osx-64
https://repo.continuum.io/pkgs/r/noarch
https://repo.continuum.io/pkgs/pro/osx-64
https://repo.continuum.io/pkgs/pro/noarch
config file : /Users/chenxi/.condarc
netrc file : None
offline mode : False
user-agent : conda/4.3.21 requests/2.14.2 CPython/2.7.12 Darwin/16.6.0 OSX/10.12.5
UID:GID : 501:20
暂时的解决方法是通过 proxychains 来做更新,但是感觉好恶心
大家有没有类似的情况,是咋解决的?
Python中最近使用conda创建环境好用吗?
清华源
Conda创建环境一直很好用,特别是管理包依赖和隔离项目环境。它不仅能处理Python包,还能管理非Python的库和工具,这点比venv强。如果你项目里混用了Python、R或者需要特定版本的C库,conda环境是首选。
不过要注意,conda和pip混用有时候会出问题,最好在conda环境里先用conda install,找不到再用pip。另外,conda的包可能比PyPI更新慢一些。
总结:需要多语言依赖或严格环境隔离就用conda,纯Python项目venv更轻量。
换清华源
channle 里面有清华源啊,
你们说的换源,是指这两行吗,<br>conda config --add channels '<a target="_blank" href="https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/'" rel="nofollow noopener">https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/'</a><br>conda config --set show_channel_urls yes<br>
记得把默认的源删了,不然还是回去请求的
对比 pip,有何优势?
没有这样用过, 直接下载一个完整的 anaconda 全部安装
conda create -name py3test python=3 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
加上一个-c 参数,代表了 channel。
都是编译好的,pip 有时候还得编译
我看这个是 additional channel,还是超时啊
如果还是超时,就需要将自己原有默认的那些 channel 先删掉,还有那个 alias 也需要改成清华的源。
conda config --show 用这个指令,可以看到当前所有的设定。
conda config --set channel_alias https://conda.anaconda.org 这个指令用于设定 channel_alias 的内容,不要尝试删除
conda config --add channels https://conda.anaconda.org 和 conda config --remove channels https://conda.anaconda.org 分别是添加和删除现有 channel 的指令,放心,随便删,以后再添加回来就好了。如果还不行,加我微信,754972247。(专治 anaconda 各种不服)
conda 对比 pip 有啥优势?
可能科学计算的的人比较感兴趣
你给 ubuntu 装几个版本的 sklearn 你就懂了,,,
太牛逼了
然后貌似现在官网换地址了,现在是可以直接搞了,但是你这个方法真的很灵
补充一下
先要调用一下 conda config --show 来看看 channels 这个配置下面有啥
我的是这样三个
channels:
- anaconda-fusion
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- defaults
除了第二行剩下的都是墙外发服务器
然后分别执行conda config --remove channels 'defaults'conda config --remove channels 'anaconda-fusion'
就好了,,速度飞快
首先,conda 集成了用于科学计算的那几个大包,非常方便,要安装,用 conda install xxx 包,升级就是 conda update xxx 包,如果不想一个一个的来,直接 conda install --all,就全好了,而且里面不光有 python,还有 R,RStudio,而且最新的 tensorflow,skflow 等等,都可以一键安装。不用一个一个的下载依赖库。
搞定了哈,恭喜^_^

