• Python笔记(二):Conda 常用命令总结


    Python笔记(二):Conda 常用命令总结

    ​ Anaconda是一个包含数据科学常用包的Python发行版本。可以用来安装和管理不同版本的Python程序包。本文总结Anaconda一些常用命令。

    ​ 在日常应用中,conda命令可以用来如下方面:

    • 管理conda环境;
    • 在现有的conda环境中安装/升级包;
    • 查询/搜索Anaconda包的索引和当前Anaconda的安装;

    一、conda环境管理(核心)

    ​ Conda 是跨平台的开源包管理和环境管理系统,最初为Python设计,现在支持多种编程语言,可轻松安装包,管理依赖和切换虚拟环境。

    ​ 在Conda(一种流行的包,依赖和环境管理器)中,管理环境是非常重要的,因为它可以帮助你隔离了不同项目所需的软件版本,避免版本冲突。以下是一些常用的环境管理命令:

    1.1 查询所有虚拟环境

    conda env list
    #或
    conda info --envs
    

    说明:列出系统中所有conda虚拟环境,带" role="presentation">的是当前激活的环境。

    1.2 创建虚拟环境

    conda create -n 环境名称 python=版本号
    

    示例:创建名为pytorch_env, Python版本为3.12的虚拟环境;

    conda create -n pytorch_env python=3.12
    

    说明:n" role="presentation">nname" role="presentation">name 的缩写,指定环境名;Python版本根据应用包进行选择;

    1.3 激活虚拟环境

    #Window 系统
    conda activate 环境名
    
    #Linux/macOS 系统(若初始化conda,需要执行 source ~/.bashrc 或 source ~/.zs  
    conda activate 环境名
    

    示例:激活pytorch_env环境

    conda activate pytorch_env
    

    1.4 退出虚拟环境

    conda deactivate
    

    说明:退出当前激活环境,回到base环境(默认环境)。

    1.5 复制虚拟环境

    conda create -n 新环境名 --clone 
    

    示例:复制pytorch_env 为 pytorch_env_copy

    conda create -n pytorch_env_copy --clone pytorch_env
    

    1.6 删除虚拟环境

    conda remove -n 环境名 --all
    

    示 例:删除old_env 环境

    conda remove -n old_env --all
    

    注意:删除前需先退出该环境(不能删除当前的环境)。

    二、包管理

    ​ Conda提供了强大的包管理功能,可以方便地安装,更新和删除包。下面是一些基本的Conda包管理命令:

    2.1 安装包

    # 在当前环境安装包 (指定版本可选)
    conda install 包名==版本号
    #安装到指定环境(无需激活该环境)
    conda install -n 环境名 包名
    

    示例:在当前环境安装 numpy 1.21.0

    conda install numpy==1.21.0
    

    说明:若用conda安装失败,可采用pip(需先激活环境):pip install 包名。

    2.2 查看当前环境以安装的包

    conda list
    

    说明:列出当前激活环境中所有已安装的包及版本。

    2.3 查看指定环境的包

    conda list -n 环境名
    

    示例:查看pytorch_env中的包

    conda list -n pytorch_env
    

    同时安装多个包:

    conda install numpy pandas matplotlib 
    

    单命令完成多包安装,减少重复操作,提升效率。

    2.4 更新包

    #更新指定包
    conda update 包名
    # 更新当前环境所有包 (谨慎使用,可能导致兼容性问题)
    conda update --all
    

    2.5 卸载包

    # 卸载当前环境的包
    conda remove 包名
    # 卸载指定环境的包
    conda remove -n 环境名 包名
    

    2.6 搜索包 (查看可用版本)

    conda search 包名
    

    示例:搜索pytorch的可用版本

    conda search pytorch
    

    三、配置与更新

    conda配置管理是使用conda包管理器时的一个重要部分,它允许用户管理环境变量、频道(channels)、配置文件等。以下是一些基本的conda配置管理方法:

    3.1 查看conda版本

    conda --version
    #或
    conda -V
    

    3.2 更新conda本身

    conda update conda
    

    说明:升级conda到最新版本,确保功能正常。

    3.3 配置国内镜像源

    # 添加Anaconda仓库镜像
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
    # 添加conda-forge仓库镜像(包含更多包)
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
    # 添加PyTorch镜像(如需安装PyTorch)
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
    
    

    3.4 设置显示通道地址(安装时可看到从哪个源下载)

    conda config --set show_channel_urls yes
    

    3.5 查看已配置的镜像源

    conda config --show channels
    

    3.6 删除指定镜像源

    conda config --remove channels 源地址
    

    四、实用技巧

    4.1 导出环境配置(用于复现环境)

    # 在当前环境下执行,导出为yaml文件
    conda env export > 环境名.yaml
    

    示 例:导出pytorch_env的配置到pytorch_env.yaml

    conda env export > pytorch_env.yaml
    

    4.2 从配置文件创建环境

    conda env create -f 环境名.yaml
    

    说明:在另一台机器,通过导出的yaml文件可快速创建相同环境。

    4.3 清理conda 缓存(释放磁盘空间)

    Conda安装的包都在目录Anaconda/pkgs" role="presentation">Anaconda/pkgs 下。随着使用,conda安装的包也越来越多;有时候会出现以下不好情况:

    • 有些包安装之后,从来没有使用过;
    • 一些安装包的tar包也保留在计算机中;
    • 由于依赖或者环境等原因,某些包的不同版本重复安装;

    以上这些情况使得更加冗余,并且浪费存储;对于这些情况可以使用conda clean净化Anaconda。

    # 清理未使用的包和缓存
    conda clean -p   # 清理未使用的包
    conda clean -t   # 清理tar包缓冲
    conda clean -y --all #清理所有缓存(推荐)
    
  • 相关阅读:
    java 读写文件的代码。
    CSS经典布局--圣杯布局和双飞翼布局
    Java基础3(操作数组的工具类(java.util.Arrays),java数组中的常见异常)
    IMS架构中的注册与会话流程:RTPEngine集成及消息路由详解
    DevOps整合Jenkins+k8s+CICD
    BufferPool缓存机制
    02_diffusion_models_from_scratch_CN
    ABAP 导入Excel表示例程序
    微信小程序wxml使用过滤器
    webgl着色器学习-fragmentShader使用three.js传入变量 (uniform使用)
  • 原文地址:https://www.cnblogs.com/GeophysicsWorker/p/20248662