Anaconda 是一个用于科学计算的 Python 发行版,支持 Linux, Mac, Windows, 包含了众多流行的科学计算、数据分析的 Python 包。
类似于Ubuntu是Linux的发行版,你基本不会直接去使用Linux,而是选择一个发行版,如Ubuntu/CentOS/RedHat/Debian等,因为发行版已经提供了基础的组件、库和应用,使用非常简单方便。
所以,想要学习Python的同学,不要再纠结python2/python3等种种版本了,也不要再纠结各种包的管理和代码移植性问题了。这些统统交给Anaconda。
安装了Anaconda,你就拥有了任意版本的python和各种包了。
使用Anaconda,在同一个系统上维护不同的项目环境也很方便。
可以到官网下载:https://www.anaconda.com/ 。
也可以到清华镜像站:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 。因为网速的原因,建议选这个。
根据系统选择下载即可,以win10为例,下载最新版本的x64.exe包。
与正常的安装软件一样,一直点next,记得选中把Anaconda加入到系统环境变量,再next,安装完成。
如果没有点选加入系统环境变量,安装完成后,把安装目录加入即可,方法:控制面板-系统-高级系统设置-环境变量-新加一个变量-加入到path变量。
此时,打开一个终端,输入:conda --version
,看到如下输出:
ok,安装完成,现在可以使用Anaconda玩耍了。
首先升级一下所有的包:conda upgrade --all
。
前面说过,使用Anaconda可以在一个系统上很方便地管理不同的项目环境,那是Anaconda强大的虚拟环境管理功能。
Anaconda自带一个base环境,使用activate
即可进入,如下:
使用 conda env list
可以查看所有的环境。
在虚拟环境下,运行conda list
查看该环境下已经安装的包。
使用 conda create -n myenv python=3.5
创建一个名为myenv的环境,使用的python版本为3.5,conda会自动下载3.5版本的python包。
创建的时候会报错:
CondaHTTPError: HTTP 000 CONNECTION FAILED for url
错误原因:
D:\Anaconda3\DLLs_ssl.pyd
会寻找依赖库OpenSSL DLLs
,由于项目目录下未找到,它会去默认目录C:\Windows\System32
查找,默认目录下存在该库,但是别的应用安装的,版本不一致,所以出现上述错误。
根本原因是安装时生成的库没有放在正确的位置。
解决方法:
从目录D:\Anaconda3\Library\bin
下复制libcrypto-1_1-x64.*
和libssl-1_1-x64.*
到D:\Anaconda3\DLLs
,这样就会在项目目录下直接查找到该库了。
使用activate myenv
进入新建环境,再次运行conda list
查看。
刚刚已经使用 activate myenv
进入环境,使用deactivate
即可退出当前环境。
conda remove -n myenv --all
先设置国内镜像站:
# 添加Anaconda的TUNA镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
查看已安装包:conda list
查找可安装的包:conda search pandas
安装包:conda install pandas
更新包:conda update pandas
卸载包:conda remove pandas
安装后尝试使用就可以了,这些命令用过几次就记住了。
常用的命令总结如下:
activate # 进入默认的base环境
activate myenv # 切换到myenv环境
conda create -n myenv python=3.5 # 创建一个名为myenv的环境并指定python版本为3.5(的最新版本)
conda env list # 列出所有环境
conda list # 列出当前环境的所有包
conda install pandas # 安装包
conda remove pandas # 卸载包
conda remove -n myenv --all # 删除环境及下属所有包
conda update pandas # 更新包