全部速查表Python开发

conda

Conda 24+

Conda CLI 命令快速参考:环境管理、包安装 / 检索、channels、lockfile、配置与清理,并附带常用参数和实操示例。

40 条命令

帮助

conda --version

打印 conda 版本、发布日期以及所使用的 Python 解释器。

conda --version
conda info

显示平台、Python 版本、环境目录、channel URL 以及已配置的包缓存。

--envs;--json;--all

conda info --envs
conda help

列出所有 conda 子命令。

conda help
conda help <subcommand>

显示单个子命令的完整参数列表与说明。

conda help install

更新

conda update conda

把 conda 自身更新到当前 channel 上的最新版本。

-n <env>;--all

conda update conda
conda update --all

把当前环境中的每个包都更新到最新可用版本。

-n <env>;--no-pin;--strict-channel-priority

conda update --all

环境

conda create -n <name>

创建一个名为 `<name>` 的新空环境(默认 Python 版本取自基础解释器)。

python=<ver>;-y 对提示回答 yes;--clone <env>;--file <env.yml>;-p <path>

conda create -n py-data python=3.12 -y
conda create -n <name> python=<ver>

创建一个锁定到指定 Python 版本的环境。

conda create -n py311 python=3.11 -y
conda env create -f <env.yml>

根据 YAML 规约文件创建环境——最可复现的环境共享方式。

-n <name>;-p <path>;--prune;--json

conda env create -f environment.yml
conda env update -f <env.yml> --prune

基于 YAML 规约更新现有环境;`--prune` 会移除不再列出的包。

conda env update -f environment.yml --prune
conda env export > environment.yml

把当前环境导出到 YAML 文件(默认不含 build 字符串;用 `--no-builds` 以便跨平台移植)。

--no-builds;--from-history;--json;--channel-priority strict

conda env export --from-history > environment.yml
conda activate <name>

按名称激活环境(也可用 `conda activate <path>` 激活按路径的环境)。在 Windows cmd.exe 中请使用 `activate <name>`。

<name>;<path>

conda activate py-data
conda deactivate

退出当前环境,返回到 base。

conda deactivate
conda env list

列出所有 conda 环境及其位置。当前环境会以 `*` 标记。

-v `~/.conda/envs` 下的路径;--json

conda env list
conda env remove -n <name>

彻底删除一个环境。

-n <name>;-p <path>;--all;-y

conda env remove -n old-proj -y
conda env config vars set VAR=value

设置一个环境变量,在激活该环境时自动生效。

-n <name>;-p <path>

conda env config vars set -n py-data CUDA_VISIBLE_DEVICES=0
conda rename -n <old> <new>

重命名环境(克隆为新名称并删除旧的)。

-n <old> <new>;-p <path> <new_path>;-d 演练

conda rename -n py-data py-ml

conda install <pkg>

把一个包安装到当前激活的(或 `-n` 指定的)环境。

-n <env>;-p <path>;-c <channel>;-y;--update-deps;--force-reinstall;--no-deps

conda install -n py-data numpy pandas
conda install -c conda-forge <pkg>

从 conda-forge 社区 channel 安装(比默认 channel 拥有更广泛的软件目录)。

conda install -c conda-forge nodejs
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

通过 PyTorch channel 安装带 GPU 支持的 PyTorch。

conda install pytorch-cuda=12.1 -c pytorch -c nvidia
conda install --file <requirements.txt>

通过 conda 安装 `pip` 兼容的 requirements 文件中列出的每个包。

conda install --file requirements.txt
conda search <pkg>

在已配置的 channel 中搜索一个包;展示版本、build 字符串与 channel。

-c <channel>;--info 显示包的详情;--platform;--json

conda search 'numpy>=2.0'
conda list

列出当前环境中已安装的所有包,附带 build 与 channel。

-n <env>;-p <path>;--json;--export;--revisions 显示历史

conda list --export > pkglist.txt
conda list --revisions

显示 `install / update / remove` 操作的历史——配合 `conda install --revision <N>` 可回滚。

conda list --revisions
conda install --revision <N>

把环境回滚到 revision `<N>`(见 `conda list --revisions`)。

conda install --revision 3
conda remove <pkg>

卸载一个包及其不再需要的依赖。

-n <env>;-p <path>;-y;--all;--force

conda remove -n py-data scipy -y

Channels

conda config --add channels <ch>

向 `.condarc` 添加一个 channel(默认最后添加的优先级最高——可用 `--prepend` 反转)。

-c <channel>;--prepend;--force

conda config --add channels conda-forge --prepend
conda config --remove channels <ch>

从 `.condarc` 移除一个 channel。

conda config --remove channels conda-forge
conda config --show channels

打印当前的 channel 优先级列表。

--json;--system;--env

conda config --show channels
conda config --set channel_priority strict|flex|disabled

控制 channel 如何解决冲突。`strict`(Conda 23 起默认)= 优先级最高的 channel 完全胜出。

conda config --set channel_priority strict

配置

conda config --show

打印合并后的配置:~/.condarc + 系统级 + 环境级 + CLI 覆盖。

--all;--json;--source;-v

conda config --show | grep -i ssl
conda config --set <key> <value>

设置一个配置项(任何可以写在 `.condarc` 中的值)。

conda config --set auto_activate_base false
conda config --describe <key>

展示一个配置项的所有允许值与默认值。

conda config --describe channel_priority
conda config --write-default

把默认的 `.condarc` 写入用户主目录(无提示直接覆盖)。

conda config --write-default

缓存 / 清理

conda clean --all

移除 tarball、已缓存的包、lockfile 与索引缓存,以回收磁盘空间。

-y;--packages;--index-cache;--tarballs;--locks;--source-cache

conda clean --all -y
conda clean --packages

移除缓存的 `.tar.bz2` / `.conda` 归档(可显著节省磁盘空间)。

conda clean --packages -y
conda clean --index-cache

移除已缓存的 channel 索引。下条命令会重新下载索引。

conda clean --index-cache -y

构建

conda build <recipe>

根据 recipe 目录构建 conda 包(skeleton 示例:`conda skeleton pypi <name>`)。

<recipe>;--no-test;--no-build-id;-c <channel>;--output

conda build recipes/numpy

杂项

conda run -n <env> <cmd>

在某个环境中运行命令而无需激活——CI 脚本和 cron 任务中很有用。

-n <env>;-p <path>;--cwd <dir>

conda run -n py-data pytest -x
conda doctor

诊断常见问题:环境状态不一致、channel 优先级、lock 文件等。

-n <env>;--verbose;--fix-checks

conda doctor

相关命令速查

关于 Conda

Conda 是开源的包与环境管理器,由 Continuum Analytics(现 Anaconda Inc)于 2012 年首次发布。Conda 的诞生是为了应对 Python 数据科学栈——pip + virtualenv 无法以自洽方式安装 NumPy、SciPy、scikit-learn、PyTorch 等科学库,这些包会捆绑编译好的 C / Fortran / CUDA 二进制,pip 无法可靠解析。Conda 提供 Python、R、Lua、Ruby 等绝大多数语言运行时的预编译包,并把它们装入隔离环境。当前稳定版本线是 Conda 24+。较新的 libmamba 求解器(`conda-libmamba-solver`,自 Conda 23.10 起成为默认)在 mamba C++ 库之上重新实现依赖求解,把求解时间从分钟级降到毫秒级。常见的相邻工具还包括 `mamba`(即插即用的 CLI 替代品)、`micromamba`(用于 CI / Docker 的单二进制安装器)和 `pixi`(基于 Rust 的下一代 conda + lockfile 管理器)。Conda 协议为 GPLv3;Anaconda 发行版额外提供面向大型组织的商业版。Conda 默认从 `repo.anaconda.com` 和其他已配置的 channel 下载;不会上传你的代码。

速查页版本 1.0.0