Conda 基本命令用法及如何使用 Conda 管理 Python 环境

Python
Anaconda
Conda
8 个月前发布

Conda是Anaconda提供的包及其依赖项和环境的管理工具,可以快速安装、运行、升级依赖项。并可以快速创建、保存、加载、切换环境。

环境操作命令

创建环境

创建环境基本命令

# conda create -n 环境名 包名 # 创建一个新的 python3.11 环境 conda create -n py311 python=3.11 # 创建环境同时添加包,只需在环境后添加包名及版本即可 conda create -n py311 python=3.11 numpy pandas=0.24.0

切换环境

查看当前环境已安装的包

conda list

切换环境命令

# 将环境切换至刚刚创建的311版本 activate py311

遇到坑了

激活环境时报错:CondaError: Run 'conda init' before 'conda activate'

终端使用的是:fish ,如果你使用的是 zsh 直接将命令替换即可

# 初始化conda环境,重启终端,问题解决 conda init fish

离开环境

conda deactivate

环境共享

将当前环境的信息(Python版本、已安装的所有包的名称)导出为配置保存为 YAML 文件,利用该文件可直接生成环境。

# 导出环境配置 conda env export > enviroment.yaml # 使用该配置 ## 进入指定环境 activate py311 ## 更新环境 conda env update -f=/path/to/enviroment.yaml

列出环境

conda env list

删除环境

conda env remove -n 环境名

查看当前环境信息

conda info

管理Python包

安装包

# 搜索库中关于此包的信息 conda search requests # 安装包 conda install requests # 同时支持pip命令 pip install requests

升级包

# conda update 环境名 包名 conda update py311 requests # 升级当前环境中所有包 conda update-all

卸载包

# 卸载当前环境 conda uninstall 包名 # 卸载指定环境 conda uninstall 环境名 包名

修改国内镜像

# 将镜像源修改为中国科学技术大学 conda config--add channels 'https://mirrors.ustc.edu.cn/anaconda/pkgs/free/' # 移除指定镜像 conda config --remove channels 'https://mirrors.ustc.edu.cn/anaconda/pkgs/free/' # 确认镜像源是否正常移除 conda config --show

Conda 命令行工具使用指南

conda 是一个用于管理和部署应用程序、环境和软件包的工具。

通用选项

  • -h, --help
    显示帮助信息并退出。

  • -v, --verbose
    可以多次使用。

    • 一次用于详细输出
    • 两次用于INFO日志记录
    • 三次用于DEBUG日志记录
    • 四次用于TRACE日志记录
  • --no-plugins
    禁用所有非Conda内置的插件。

  • -V, --version
    显示 Conda 的版本号并退出。

命令

以下是可用的内置命令和插件子命令:

  • activate
    激活一个 Conda 环境。

  • clean
    删除未使用的软件包和缓存。

  • compare
    比较不同 Conda 环境之间的软件包。

  • config
    修改 .condarc 文件中的配置值。

  • content-trust
    Conda 的签名和验证工具。

  • create
    从指定的软件包列表中创建一个新的 Conda 环境。

  • deactivate
    关闭当前激活的 Conda 环境。

  • doctor
    显示当前环境的健康报告。

  • export
    导出指定的环境。

  • info
    显示有关当前 Conda 安装的信息。

  • init
    初始化 Conda 以便与 bash 进行交互。

  • install
    将指定的软件包列表安装到指定的 Conda 环境中。

  • list
    列出 Conda 环境中已安装的软件包。

  • notices
    检索最新的频道通知。

  • package
    创建底层的 Conda 软件包。(实验性)

  • remove (uninstall)
    从指定的 Conda 环境中删除指定的软件包。

  • rename
    重命名现有的环境。

  • repoquery
    对软件包仓库进行高级搜索。

  • run
    在 Conda 环境中运行一个可执行文件。

  • search
    使用 MatchSpec 格式搜索软件包并显示相关信息。

  • update (upgrade)
    将 Conda 软件包更新到最新的兼容版本。

conda -h

usage: conda [-h] [-v] [--no-plugins] [-V] COMMAND ... conda is a tool for managing and deploying applications, environments and packages. options: -h, --help Show this help message and exit. -v, --verbose Can be used multiple times. Once for detailed output, twice for INFO logging, thrice for DEBUG logging, four times for TRACE logging. --no-plugins Disable all plugins that are not built into conda. -V, --version Show the conda version number and exit. commands: The following built-in and plugins subcommands are available. COMMAND activate Activate a conda environment. clean Remove unused packages and caches. compare Compare packages between conda environments. config Modify configuration values in .condarc. content-trust Signing and verification tools for Conda create Create a new conda environment from a list of specified packages. deactivate Deactivate the current active conda environment. doctor Display a health report for your environment. export Export a given environment info Display information about current conda install. init Initialize conda for bash interaction. install Install a list of packages into a specified conda environment. list List installed packages in a conda environment. notices Retrieve latest channel notifications. package Create low-level conda packages. (EXPERIMENTAL) remove (uninstall) Remove a list of packages from a specified conda environment. rename Rename an existing environment. repoquery Advanced search for repodata. run Run an executable in a conda environment. search Search for packages and display associated information using the MatchSpec format. update (upgrade) Update conda packages to the latest compatible version.