anaconda想必大家都不陌生,属于使用python的重要工具,更是学习机器学习、深度学习的必备工具。在搭建环境过程中,感觉出现的许多问题根源在于对于anaconda的基本原理理解不到位,导致许多无效操作。为此,我重温了一遍anaconda的相关背景知识,希望对各位也能有所收获。
首先我们需要从python本身说起,从根源寻找问题,我们在使用python语言编写程序之前需要下载一个python解释器,这才是python的本体,没了python解释器,我们即使写了无比正确优雅的python脚本也没办法运行,那这个解释器在哪呢? 就在你安装python的地方。
所有的第三方包都放在site-packages文件夹里面
最关键的,一个python环境中需要有一个解释器,和一个包集合解释器:解释器根据python的版本大概分为2和3。python2和3之间无法互相兼容,也就是说用python2语法写出来的脚本不一定能在python3的解释器中运行包集合:包集合中包含了自带的包和第三方包,第三方包我们一般通过pip或者easy_install来下载,当一个python环境中不包含这个包,那么引用了这个包的程序不能在该python环境中运行
问题所在:python环境解释完了,那么接下来就要说明这样的环境究竟产生哪些问题,因为anaconda正式为了解决这些问题而诞生的
python2和python3在语法上是不兼容的,那我的机器上应该装python2还是python3呢,可能一开始选一个学习就好了,但是如果你要开发的程序必须使用python2而不能使用python3,那这时候你就不得不再下载一个python2,那这时候环境变量该设谁的目录呢,如果还是切换环境变量岂不是很麻烦虽然目前Python3使用的范围更广,但是Python3小版本之前也存在一些差异
如果我在本地只有一个python环境那我所有程序用到的各种包都只能放到同一个环境中,导致环境混乱。另外当我将写好的程序放到另一电脑上运行时又会遇到缺少相关包,需要自己手动一个个下载的情况实在是烦人。要是能每个程序开发都选用不同的环境,而开发好之后又能将该程序需要的环境(第三方包)都独立打包出来就好了
是一个包含180+的科学包及其依赖项的发行版本。可以创建一个独立的Pvthon环境,其包含的科学包包括: conda,numpy,scipy,ipython notebook等
用于创建一个独立的Python环境的工具,新环境中需要手动安装需要的三方包
依赖项检查
不一定会展示所需其他依赖包
安装包时或许会直接忽略依赖项而安装,仅在结果中提示错误
列出所需其他依赖包
安装包时自动安装其依赖项
可以便捷地在包的不同版本中自由切换
维护多个环境难度较大
比较方便地在不同环境之间进行切换,环境管理较为简单
在系统自带Pvthon中包的更新/回退版本/卸载将影响其他程序
不会影响系统自带Python
仅适用于Python
适用于Python,R,Ruby, Lua,Scala,Java,JavaScript,C/C++,FORTRAN
conda结合了pip和virtualenv的功能
打开anaconda prompt
创建新环境
conda create --name
例如: conda create --name env1 python==2.7
创建了一个名为env1的环境,python版本为2.7
默认情况下,新创建的环境将会保存在/Users/
env_name:即为新创建的环境名,建议使用英文进行命名,且不加空格,名称两边不加尖括号“<>”
package_names:即安装在环境中的包名,名称两边不添加尖括号<>
如果要在新创建的环境中创建多个包,则直接在
--name 也可以替换成-n
说明:
deactivate
conda info --envs
或者 conda info -e 或者 conda env list
结果中*所在行即为当前所在环境
conda create --name
--clone
copied_env_name:即为被复制/克隆环境名,环境名两边不加尖括号"<>"
new_env_name∶即为复制之后新环境的名称,环境名两边不加尖括号"<>"
conda remove --name
--all
获取当前环境中已安装的包信息
conda list
查找可供安装的包版本
conda search --full-name
--full-name:为精确查找的参数
conda search
在当前环境中安装包
conda install
指定版本号
conda install
=versiono
在指定环境中安装包
conda install --name
使用pip安装包
pip install
说明:当使用conda install无法进行安装时,可以使用pip进行安装
注意:
说明:当使用conda install 无法进行安装时,可以考虑从Anaconda.org中获取安装包的命令,并进行安装.浏览器中输入http:/ /anaconda.org (无需注册)
复制To install this package with conda run:"下方的命令,并粘贴在终端中执行
卸载当前环境中的包
conda remove
卸载指定环境中的包
conda remove --name
更新指定包
conda update
或conda upgrade
说明︰更新多个指定包,则包名以空格隔开,向后排列。例如:conda updatepandas numpy matplotlib即更新pandas、numpy、matplotlib包
更新所有包
conda update --all或conda upgrade --all
说明:在安装Anaconda之后执行上述命令更新Anaconda中的所有包至最新版本,便于使用。