zoukankan      html  css  js  c++  java
  • Anaconda 学习笔记

    Anaconda 学习笔记

    目录

    介绍

    • Anaconda(官网 https://www.anaconda.com/ )是软件包/环境管理工具 Conda 的数据科学版本,自带的 base 环境提供了大量数据科学使用的包
    • 当然 base 环境有点大,通常都是创建新的环境来用

    安装&运行

    • 官网下载安装,可以打开 Anaconda Prompt 命令行,也可以用 Anaconda Navigator 可视化操作

    命令

    全局相关

    • 帮助 conda -h
    • 版本 conda -V
    • 配置 conda config
      • conda config --show 查看所有配置
      • conda config --show config-name 查看指定的配置,只有 config-name 是有效的配置名称时才会正确输出。如查看 default_channels conda config --show default_channels
      • conda config --set config-name config-value 设置指定配置
      • conda config --add config-name config-value 添加指定配置,这也是最常见的添加配置的写法
    • 信息 conda info
      • conda info -e 查看创建的环境列表

    环境相关

    • 创建环境 conda create
      • conda create -n env-name packages 创建名为 env-name 的环境,并安装若干个空格分隔的包。通常创建环境即写为 conda create -n env-name python=3.9 numpy,指定版本用=而不是==
    • 进入环境 conda activate env-name
    • 退出环境 conda deactivate

    包相关

    • 安装包 conda install
      • conda install packages 在当前环境下安装若干个空格分隔的包,指定版本用=
      • -c channel-name 指定使用的 channel,关于 channel 见下文配置
    • 清理无用包 conda clean
    • 查看安装的包 conda list
    • 删除包 conda remove,别名 conda uninstall
      • conda remove packages 递归删除指定包和依赖于指定包的所有包
      • --all 删除所有包,也就是删除环境
    • 查找包 conda search
      • conda search package-name 查找指定包,*为通配符。部分包在 pip 和 conda 里的名称不一样,如 torch 和 opencv-python,因此可以先 conda search *torch* 找到对应的包

    PyCharm 中使用 Conda 环境

    配置

    • 跟 Maven 等工具一样,有多个层级的配置文件,通常用到的就是用户级配置 ~/.condarc 文件,也就是 C:/Users/用户名/.condarc
    • 第一次使用可以首先 conda config 让其生成这个配置文件

    修改源

    • Conda 下载软件包的渠道叫做 Channel,由于各种原因,在国内使用 Anaconda 自带的 Channel 下载会很慢,因此我们需要更换成国内的 Channel,如清华、中科大等都有提供
    • 网上各种博客写的乱七八糟,很多改源只改一半,改了也不知道什么意思,容易出现比如找不到 Pytorch 这样的问题,所以一定要参考官方内容
    • 清华 Anaconda 镜像配置:https://mirror.tuna.tsinghua.edu.cn/help/anaconda/ 将以下内容写入 .condarc 文件中即可使用清华提供的 Channel
      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
        simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      

    配置文件详解

    • 为了理解上面的配置内容,需要查看官方文档 https://conda.io/projects/conda/en/latest/configuration.html
    • Conda 的 Channel分为 base-url + channel-name 两部分,以下面为例
      // 规定 channel,按照顺序依次搜索。如果是 url,则规定的就是 base-url + channel-name 这两部分;如果是 defaults,则将 Anaconda 默认源引入,如果是其他内容,则为 channel-name
      channels:
        - defaults
      
      // 设为 true,则在查找时会显示每个包对应以上 channels 配置中的哪个 channel(url、defaults 或者 channel-name)
      show_channel_urls: true
      
      // 当仅有 channel-name 时,将 channel_alias 作为 base-url,Anaconda 默认为官方的 https://conda.anaconda.org
      channel_alias: https://conda.anaconda.org
      
      // 如果 channels 中指定 defaults,设置 default_channels 可以覆盖官方自带的 channels
      default_channels:
        - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
      
      // 指定每个 channel-name 对应的 channel_alias(base-url),覆盖全局的 channel_alias
      custom_channels:
        conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
      
    • Anaconda 无任何配置时输出其自带的配置
      channel_alias: https://conda.anaconda.org
      channels:
        - defaults
      custom_channels:
        pkgs/main: https://repo.anaconda.com
        pkgs/r: https://repo.anaconda.com
        pkgs/msys2: https://repo.anaconda.com
        pkgs/pro: https://repo.anaconda.com
      default_channels:
        - https://repo.anaconda.com/pkgs/main
        - https://repo.anaconda.com/pkgs/r
        - https://repo.anaconda.com/pkgs/msys2
      
      可以看到,当不加指定的 conda install pytorch 时,Anaconda 从指定的 default_channels 三个 Channel 去找;如果指定 -c pkgs/main,拼接上 custom_channels 中的内容,就去 https://repo.anaconda.com/pkgs/main 找;如果指定 -c pytorch,拼接上 channel_alias,就去 https://conda.anaconda.org/pytorch 找,只有后者才有 pytorch 的包,因此在 Pytorch 官网上指定了 -c pytorch
    • 那么回到清华镜像源,就很容易理解网上常见的缺斤少两的清华镜像源的问题所在了

    常见问题

  • 相关阅读:
    CDZSC_2015寒假新人(4)——搜索 A
    第一次组队赛---2010年全国大学生程序设计邀请赛(福州)L
    ZSC新生赛 沼跃鱼早已看穿了一切
    ZSC新生赛 聪明的员工
    CDZSC_2015寒假新人(1)——基础 I
    Linux 系统时间和硬件时间
    Python 深浅复制
    Python 函数内省
    Python 函数参数
    Python 可调用对象
  • 原文地址:https://www.cnblogs.com/moonfan/p/15519116.html
Copyright © 2011-2022 走看看