anaconda 简绍
anaconda 和 python 的关系
python 是一门编程语言,官网的 Python 蕴含了外围的模块和库,为了应用其余的性能,须要独自下载其余的模块和库。
anaconda 将 python 和许多更高级性能的库捆绑在一起,造成了一个不便的科学计算环境,装置了 Ananconda 就相当于装置了 Python 外加这些模块和库。省去了本人下载和装置各种包的麻烦,特地上 linux 上降级和装置 python 非常麻烦。当然 Anaconda 次要的性能还在于你能够不便进行环境治理。
总之 anacond = python + 高级性能库 + IDE(集成开发环境,anaconda 包中自带的 IDE: jupyter notebook 和 spyder)
Anaconda、conda、pip、virtualenv 的区别
- Anaconda
Anaconda 是一个蕴含 180+ 的迷信包及其依赖项的发行版本。其蕴含的迷信包包含:conda, numpy, scipy, ipython notebook 等。 - conda
conda 是 anaconda 中包及其依赖项和环境的管理工具。conda 包和环境管理器蕴含于 Anaconda 的所有版本当中。只有你装置了 anaconda 就会主动装置 conda 包。
conda 包不仅仅实用于 Python, 还实用于 R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN 等其余语言。并能够在任何平台上运行。
conda 能够疾速装置、运行和升级包及其依赖项。并能够在计算机中便捷地创立、保留、加载和切换环境。 - PIP
PIP 是通用的 Python 包管理工具,提供了对 Python 包的查找、下载、装置、卸载、更新等性能。在 Python3.4(一说是 3.6)及更新的版本中,PIP 曾经捆绑装置了,不须要再独自装置。 -
virtualenv
virtualenv 是用于创立一个独立的 Python 环境的工具包。可通过 pip 装置应用。pip 与 conda 比拟
-
依赖项查看
pip:- 不肯定会展现所需其余依赖包。
- 安装包时或者会间接疏忽依赖项而装置,仅在后果中提醒谬误。
conda:
- 列出所需其余依赖包。
- 安装包时主动装置其依赖项。
- 能够便捷地在包的不同版本中自在切换。
- 环境治理
pip: 保护多个环境难度较大。
conda: 比拟不便地在不同环境之间进行切换,环境治理较为简单。 - 对系统自带 Python 的影响
pip:在零碎自带 Python 中包的更新 / 回退版本 / 卸载将影响其余程序。
conda:不会影响零碎自带 Python。 - 实用语言
pip:仅实用于 Python。
conda:实用于 Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN 等。 - conda 与 pip、virtualenv 的关系
conda 联合了 pip 和 virtualenv 的性能。
下载安装
网络上有大量的介绍,在此就不在做赘述。
conda 治理
window 用户在 anacon 目录下启动“Anaconda Prompt”,macOS 和 Linux 用户请应用“Terminal”进行操作。
-
conda 本身相干
- 查看以后 conda 工具版本号:
conda --version
- 查看包含版本的更多信息:
conda info
- 更新 conda 至最新版本:
conda update conda
- 查看 conda 帮忙信息:
conda -h
- 查看以后 conda 工具版本号:
-
conda 环境治理相干
- 查看 conda 环境治理命令帮忙信息:
conda create --help
- 创立 python 环境(创立进去的虚拟环境所在的地位为 conda 门路下的 env/ 文件下, 默认创立和以后 python 版本统一的环境.):
conda create --name envname
- 创立新环境时指定版本 (以 python3.6 版本为例),环境名称为 python36:
conda create --name python36 python=3.6
- 切换环境 (以 python36 的环境为例,默认是 base 环境),切换后可通过 python - V 查看是否切换胜利:
conda activate python36
- 返回前一个 python 环境:
conda deactivate
- 显示已创立的环境,会列出所有的环境名和对应门路:
conda info -e
- 删除虚拟环境(envname 为环境名称):
conda remove --name envname --all
- 指定 python 版本, 以及多个包(envname 为环境名称):
conda create -n envname python=3.6 scipy=0.15.0 astroib numpy
- 查看以后环境装置的包:
conda list #获取以后环境中已装置的包
conda list -n python36 #获取指定环境中已装置的包 (python36 为环境名)
- 重命名环境(conda 其实没有重命名指令,实现重命名是通过 clone 实现的,分两步:先 clone 一份 new name 的环境而后删除 old name 的环境)比方,想把环境 rcnn 重命名成 tf:
conda create -n tf --clone rcnn #克隆环境 rcnn
conda remove -n rcnn --all #删除 rcnn 环境
- 克隆一个环境 (clone_env 代指克隆失去的新环境的名称,envname 代指被克隆的环境的名称):
conda create --name clone_env --clone envname
conda info --envs #查看 conda 环境信息
- 查看 conda 环境治理命令帮忙信息:
-
包相干
- 查看以后环境下所有的包(前提是进入到该环境下):
conda list
- 查找包:
conda search py #含糊查找,即含糊匹配,只有含 py 字符串的包名就能匹配到
conda search --full-name python #--full-name 示意准确查找,即齐全匹配名为 python 的包
- 装置更新删除包:
conda install scrapy #在以后环境中安装包
conda install -n python36 scrapy #在 python36 环境中安装包
conda update scrapy #在以后环境中更新包
conda update -n python36 scrapy #在 python36 环境中更新包
conda update --all #更新以后环境所有包
conda remove scrapy #在以后环境中删除包
conda remove -n python36 scrapy #在 python36 环境中删除包
- 查看以后环境下所有的包(前提是进入到该环境下):
-
Python 治理相干
- 查找能够装置的 python:
conda search python #查找所有名称蕴含 python 的包
- 装置不同版本的 Python(在不影响以后版本的状况下, 新建环境并装置不同版本的 python)
conda create -n py36 python=3.6 anaconda #py36 为您要创立的环境的名称。anaconda 是元数据包,带这个会把 base 的根底包一起装置,不带的话新环境只蕴含 python3.6 相干的包。python = 3.6 是您要在此新环境中装置的软件包和版本。
- 激活想要应用的环境(py36 为环境名):
conda activate py36
- 更新 Python:
conda update python
- 将 python 更新到指定版本的:
conda install python=3.6
- 查找能够装置的 python:
-
分享环境 (在不同的电脑上创立雷同的环境 - 同一个版本的 python 及各种包)
- 首先通过 activate target_env(target_env 为要分享的环境名),而后输出上面的命令会在当前工作目录下生成一个 environment.yml 文件:
conda env export > environment.yml
- 小伙伴拿到 environment.yml 文件后,将该文件放在工作目录下,能够通过以下命令从该文件创建环境:
conda env create -f environment.yml
- 首先通过 activate target_env(target_env 为要分享的环境名),而后输出上面的命令会在当前工作目录下生成一个 environment.yml 文件: