掌握conda虚拟环境构建和常见命令:学习笔记

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 本文是个人的conda学习小结
  • 一、conda介绍(minconda)
  • 二、conda命令
  • 1.conda具体命令
  • 1.1 conda帮助
  • 三、conda info
  • 1、查看所有的信息
  • 2、查看基础环境的路径
  • 3、列出当前所存在的所有的conda环境
  • 4、列出所有环境变量
  • 5、查看令牌所有公开通道
  • 四.conda create
  • 1、创建conda环境
  • 2、进入conda环境
  • 3、查看具体包
  • 4、退出环境
  • 5、根据地址创建conda环境
  • 6、克隆(复制)现有环境
  • 7、创建新环境并安装多个包
  • 五、conda install
  • 六、conda remove
  • 七、conda clean
  • 七、conda list
  • 八、conda search
  • 九、conda update
  • 十、conda config

  • 本文是个人的conda学习小结

    一、conda介绍(minconda)

    Conda是用Python语言开发,但能管理其他编程语言的项目,包括多语言项目。conda属于Anaconda中的一个包。Conda 是一个运行在 Windows、macOS 和 Linux 上的开源包管理系统和环境管理系统。Conda 可以快速安装、运行和更新包及其依赖项。Conda 可以轻松地在本地计算机上创建、保存、加载和切换环境。它是为 Python 程序创建的,但它可以为任何语言打包和分发软件。
    The conda package and environment manager is included in all versions of Anaconda and Miniconda.
    由于前几次下载最新的anaconda,然后安装之后没有问题,在使用的过程中老是出问题。刚开始的时候下载安装各种包都是没有问题的,但是不知为何在cmd中就找不到conda,路径和变量都是没有问题。因此,在后面我安装minconda就没有出现问题。具体安装路径如下:
    anaconda:https://repo.anaconda.com/archive/Anaconda3-2023.03-Windows-x86_64.exe
    minconda: https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe
    此链接都是Windows窗口下的,具体其他系统风格的可以再具体网站选择。
    若使用minconda后感觉不够用,则可以不用卸载直接安装其余anaconda包,具体方法官方网站有具体介绍。

    二、conda命令

    conda命令可以用来:

  • 创建新的 conda 环境。
  • 在现有的 conda 环境中安装/升级包。
  • 查询/搜索 Anaconda 包的索引和当前 Anaconda 的安装。
  • 小注:前面带两个断线“–”的常用命令(并不是所有的命令都可以)可以缩写为一个短线加后面内容的首字母。例如–name可以缩写为-n;–envs可以缩写为-e

    1.conda具体命令

    主要内容参考Anaconda网站的命令使用文件Using Conda:https://conda.io/docs/using/index.html
    常用的命令代码如下:
    conda安装包的方法和pip基本是一样,如

    pip install packages
    conda install packages
    #具体需要使用什么包后面就可以换成具体包替代
    

    1.1 conda帮助

    可以在命令行输入此命令寻求相应的帮助,即

    conda --help
    #或者使用缩写
    conda -h
    

    命令执行后我们会看到:

    三、conda info

    conda info可以用来查看相关信息,如:

    1、查看所有的信息

    conda info --all
    conda info -a
    

    2、查看基础环境的路径

    conda info --base
    

    3、列出当前所存在的所有的conda环境

    conda info --envs
    conda info -e
    conda env list
    

    查看base和虚拟环境

    4、列出所有环境变量

    conda info --system
    conda info -s
    

    5、查看令牌所有公开通道

    conda info --unsafe-channels
    

    四.conda create

    conda create可以用来创建新的 conda 环境,如下:

    1、创建conda环境

    根据环境名称来创建一个 conda 环境,假设我们的环境名称为Icesat2

    conda create -n Icesat2
    

    2、进入conda环境

    创建完成后,我们使用如下命令进入环境

    conda activate Icesat2
    

    此时可以看到前面多了一个(Icesat2),这个是我们进入了该环境的标志。

    3、查看具体包

    使用conda list 来查看该环境下都安装了那些具体的包:
    注:详细关于conda list请查看第七节。

    conda list
    

    4、退出环境

    如果要退出所创建的环境回到base环境,只需执行:

    conda deactivate
    #或者
    conda activate
    

    小注:我们只能退出到基础环境,在基础环境中继续退出还是在基础环境中。

    5、根据地址创建conda环境

    除了根据名称创建环境以外,还可以根据地址来创建conda环境。
    上面可以看到,我们创建的Icesat2的环境地址为:D:\users\15616\minconda3\envs\Icesat2,可见他的默认地址就是…\minconda3\envs\下。
    若要从地址创建,则需要执行命令:-p,–prefix

    conda create -p G:\minconda3\envs\my_env
    # 或者
    conda create --prefix G:\minconda3\envs\my_env
    

    6、克隆(复制)现有环境

    根据现有环境的名称来进行克隆,假设现有环境的名称为original_env,新的环境的名称为new_env,则只需执行:

    conda create -n new_env --clone original_env
    

    当然,也可以根据现有环境地址进行克隆:

    conda create -n new_env --clone G:\anaconda3\envs\original_env
    

    7、创建新环境并安装多个包

    packages:我们新创建的环境如果不安装必要的包是无法使用的,需要安装的包用空格隔开,即:

    conda create -n my_env python numpy flask
    

    我们用该命令创建了一个叫my_env的环境,同时安装了三个包python、numpy、flask。
    安装完成后利用conda list可以看到安装的包远不止三个,这是因为有些包需要其他包作为前缀。
    此外,我们的 python 安装的是最新版本,当然我们也可以指定版本进行安装:

    conda create -n my_env python=3.9.7 numpy flask
    

    五、conda install

    conda install可以用来在 conda 环境中安装相应的包,具体格式如下:

    conda install [-n env_name | -p path] [-c channel_address] [packages]
    

    例如,我们要在my_env下安装 3.9.7 版本的 python。我们可以先进入该环境,然后安装:

    conda activate my_env
    conda install python=3.9.7
    

    注意这里的=其实就是一个模糊约定,一般都会下载最新版本如python=3.9或者python=3.10系统就会下载3.9和3.10的最新版本的python。
    也可以直接指定安装环境:

    conda install -n my_env python=3.9.7 # 根据名称
    conda install -p G:\anaconda3\envs\my_env python=3.9.7 # 根据地址
    

    另外,安装numpy时,我们可以从指定的频道(conda-forge)下载

    conda install -n my_env -c conda-forge numpy
    

    六、conda remove

    conda remove可以用来移除 conda 环境中的某些包,也可以移除整个环境,具体格式如下:

    conda remove [-n env_name] [packages] [--all] # 根据名称
    conda remove [-p path] [packages] [--all] # 根据地址
    

    例如,如果我们需要移除my_env下的numpy,只需执行

    conda remove -n my_env numpy
    

    当然我们也可以移除conda环境(即移除所有的包)

    conda remove -n my_env --all
    

    若想要重新命名环境名称,conda没有提供重命名环境的命令,我们只能先克隆一份原来的环境,然后再删除原来的环境,具体操作如下(例如将环境a重命名成b):

    conda create -n b --clone a
    conda remove -n a --all
    

    特别注意:conda uninstallconda remove的别名,我们也可以使用conda uninstall来移除包,方法是相同的。**

    七、conda clean

    conda clean用来清理conda 环境中的缓存,具体格式如下:

    conda clean -p#删除没有用的包
    conda clean -t#删除tar打包
    conda clean -y -all#删除所有的安装包及cache(索引缓存、锁定文件、未使用过的包和tar包)
    

    七、conda list

    conda list用来列出 conda 环境中的包,具体格式如下:

    conda list [-n env_name] [package] # 根据名称
    conda list [-p path] [package]# 根据地址
    

    conda list只列出当前环境的所有包,若要列出其他环境的包,例如列出my_env下的所有包,只需执行:

    conda list -n my_env
    

    若要列出my_env中与numpy相关的包(准确地来说是含有numpy字样的包),只需执行:

    conda list -n my_env numpy
    

    所以,我们可以使用conda list来查询当前环境是否安装了相应的包(每次只能查询一个),如果最后的结果没有列出,那就说明没有安装。

    八、conda search

    conda search用来搜索指定的包,具体格式如下:

    conda search [-c channel_address] [-f] [packages]
    

    我们可以指定在conda-forge中搜索numpy:

    conda search -c conda-forge numpy
    

    事实上,上述命令会搜索到所有包含numpy字样的包,如果我们只想搜索numpy这个包,需要加上-f(–full-name的缩写),即

    conda search -c conda-forge -f numpy
    

    九、conda update

    conda update用来将一系列的包升级到最新版本,具体格式如下:

    conda update [-n env_name | -p path] [packages] [--all]
    

    例如,如果我们想要升级my_env下的numpy和scipy,只需执行:

    conda update -n my_env numpy scipy
    

    如果我们要想更新my_env中的所有包,则需执行:

    conda update -n my_env --all
    

    如果要更新conda本身,则需执行

    conda update conda
    

    如果要更新anaconda或者minconda,则需执行

    conda update minconda
    

    注:升级Anaconda前需要先升级conda。

    十、conda config

    conda config用来配置 conda 的频道,相关信息会存储在C:\Users\你的用户名.condarc文件中。
    添加频道的格式为:

    conda config --add channels [channel]
    

    例如,若要添加conda-forge这个频道

    conda config --add channels conda-forge
    

    由于国外频道的速度普遍不稳定,我们通常会考虑使用国内镜像频道,比如清华镜报。
    考虑到 Windows 用户无法直接创建名为.condarc的文件,我们可以先执行

    conda config --set show_channel_urls yes
    

    然后直接修改文件

    channels:
      - defaults
    show_channel_urls: true
    default_channels:
      - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
      - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
      - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
    custom_channels:
      conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
    

    修改完后,执行conda clean -i清除索引缓存,保证用的是镜像站提供的索引。

    设置好之后,我们就可以执行了

    conda config --get channels
    

    查看已添加的频道。

    物联沃分享整理
    物联沃-IOTWORD物联网 » 掌握conda虚拟环境构建和常见命令:学习笔记

    发表评论