Anaconda(大蟒蛇),是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。而它的conda是包及其依赖项和环境的管理工具。下面就来总结一下conda命令。
点击Anaconda Powershell Prompt或Anaconda Prompt
(默认进入 Anaconda 的基准虚拟环境 – base)
conda --help / conda -h
conda --version / conda -V
conda update --help
Anaconda 将 anaconda、conda、python 都当成第三方模块来管理
conda update --all # 更新 Anaconda 当前虚拟环境中的所有的第三方模块
conda upgrade --all # 同上
conda update anaconda # 更新 Anaconda 整体版本
conda update conda # 更新 conda 命令
conda update python # 更新 Anaconda当前的Python环境到支持的最新版本
conda info # 显示 Anaconda 当前的相关信息
conda info -e # 列出 Anaconda 当前的所有的虚拟环境、当前活跃的虚拟环境前有*
在envs directories下,我们可以看到Anaconda创建的虚拟环境会放在哪里,这里我的电脑中首要的容器目录为C:\Users\new.conda\envs
Anaconda更加详细的配置信息:
conda config --show
此外,还有:
conda config --show channels
conda config --add channels xxxx
单独用 Python 创建虚拟环境,我们需要自行指定虚拟环境的容器目录,而且Python 所有的虚拟环境都是基于当前同一个 Python 的版本
而 Anaconda 创建虚拟环境基于的Python版本可以不同,也可以将某个位置上的虚拟环境复制 (克隆、导出) 到另外的位置上
conda info -e
conda env list
默认创建虚拟环境的位置是在 conda config --show 中显示的虚拟环境容器目录中,即我们上面提到的C:\Users\new.conda\envs,使用
conda create -n test
在该目录下创建虚拟环境test
如果不想把环境创建到这里,我们可以用
conda create -n testenv -p 虚拟环境的文件夹位置
来改变虚拟环境创建的位置
或者直接修改Anaconda默认设置
conda config --add envs_dirs 虚拟环境的文件夹位置
也可以在创建虚拟环境时直接安装一些需要的包,直接在创建虚拟环境命令后面以空格间隔需要安装的包名,如
conda create -n testenv numpy scipy
conda create -n env numpy=1.1 scipy=1.25
最最重要的是,Anaconda可以指定虚拟环境基于的Python版本
conda create -n envname python=3.7
# testenv 整体复制本机的另一个名称的虚拟环境中
conda create -n newenvname --clone oldenvname
conda env export > save_env_config.yml
# 导出当前虚拟环境的配置到 yml 文件
# 如:conda env export > c:\Dev\anaconda3\envs\base_env_config.yml
在另一个位置或另一台计算机上导入相同的环境配置
conda env create -n envname -f save_env_config.yml
# 如:conda create -n newbase -f c:\Dev\anaconda3\envs\base_env_config.yml
conda remove -n envname
conda remove -n envname --all
# 可能需要手动删除对应的虚拟环境所在的文件夹
包管理 – 类似 pip ,也可以使用 pip
在当前虚拟环境中安装 package(s)
conda install packagename1 packagename2 ....
在指定虚拟环境中安装 package(s)
conda install -n envname packagename1 packagename2 ...
在当前虚拟环境中删除 package(s)
conda remove packagename1 packagename2 ....
在指定虚拟环境中删除 package(s)
conda remove -n envname packagename1 packagename2 ...
conda list
在当前虚拟环境中更新 package(s)
conda update packagename1 packagename2 ....
在指定虚拟环境中删除 package(s)
conda update -n envname packagename1 packagename2 ...
Anaconda所有的可用的第三方模块都是Anaconda 自己维护,因此有时第三方包可能版本有些滞后,这时就要用pip命令
conda search packagename # 模糊查询
conda search --full-name package_full_name # 精确查询
conda clean -p # 清除无用的 package
conda clean -i # 清空 Anaconda 缓存