• 谈谈Anaconda


    1. 引言

    这里主要记录一下conda和pip的常用用法,顺便谈谈anaconda/conda/pip之间的一些区别。

    2. 谈谈anaconda/conda/pip

    • anaconda:简单来说,anaconda就是一个包含conda这个通用包管理器以及这种数据科学包的发行版软件
    • conda:其实就是一个通用的包管理器。
      • 说它通用是因为它可以管理多种语言的包,像Python/R等,虽然大多数人最初是为了使用Python而安装它。
      • 基本不需要担忧包的依赖关系,大多数情况都能自动解决(这是如果单独Python并安装包时极为头疼的一件事)
      • 有自带管理虚拟环境的工具(解决某些工具的冲突问题,像pytorch和tensorflow等)
      • 使用的是二进制文件来管理
    • pip:专门用于Python的包管理工具
      • 与conda不同的是,只用于Python库的管理,但是可用包要比conda来得多。
      • 有时会提示依赖关系的错误,需要自己手动解决
      • 没有自带的管理虚拟环境的工具,需要用virtualenv等工具来解决
      • 使用的是源码或者wheel文件来管理(使用可以在github找源码来安装或者下载wheel来安装)
    • 可以同时使用conda和pip,不过可能会带来管理的混乱

    3. conda的常用用法

    3.1 conda信息

    • 查看conda的版本
      conda --version
      
    • 查看conda的信息
      conda --info
      
    • 配置信息
      # 显示配置信息(可添加config中的选项)
      conda config --show
      
      # 显示channels的配置信息
      conda config  --show channels
      
      # 添加新的channels(默认源的速度较慢,可切换为清华源)
      conda config --add channels urls
      
      # 删除channels
      conda config --remove channels urls
      
      # 设置配置信息中的选项
      conda config --set show_channel_urls yes
      
      第一次使用conda config会自动生成.condarc的配置文件,默认情况下是没有.condarc的,也可以通过向.condarc添加配置信息来修改默认配置
      使用.condarc来修改配置信息

    3.2包管理

    # 查看conda版本
    conda --version
    
    # 更新conda 
    conda update conda
    
    # conda安装包(默认安装最新的版本,如果指定大版本如3,默认会安装大版本中最新的版本如3.13)
    conda install packages
    conda install packages=version
    conda install "packages>version1,<version2"
    
    # conda更新包(也可以使用upgrade)
    conda update packages
    # 一次更新所有的包
    conda update --all
    
    # 卸载包(也可以使用uninstall)
    conda remove packages 
    
    # 查找某个包在channels中所有可用版本
    
    conda search packages
    
    # 列出环境中已经安装的包(conda list),配合管道命令查找某个包
    conda list | grep packages (linux)
    conda list | find "packages" (windows)
    

    3.3环境管理

    # 列出当前已有的虚拟环境(默认只有base环境)
    conda env list
    conda info --env
    
    # 创建虚拟环境(如创建pt_gpu,预先安装python3.8)
    conda create --name pt_gpu python=3.8
      
    # 克隆已有的虚拟环境
    conda create --name pt_gpu --clone base
    
    # 激活指定环境
    conda activate pt_gpu
    
    # 退出其他虚拟环境,进入base环境
    conda deactivate
    
    # 删除虚拟环境
    conda env remove --name pt_gpu
    

    4. pip的常用用法

    4.1 包管理

    # 安转包(默认更新的版本方式和conda的相同)
    pip install package
    pip install package==version (指定安装版本)
    pip install "package>=version1,<version2"
    
    # 保存requirements文件
    pip freeze > requirements.txt
    pip install -r requirements.txt
    
    # 更新pip
    pip install pip -U
    # 更新包
    pip install --upgrade packages
    # 一次更新所有未更新的包(用于linux, -o用于查看当前为旧版的包,cut从每一行中提取包的名字,xargs把包当成参数使用pip install --upgrade)
    pip list -o | cut -d " " -f1 | xargs -n1 pip install --upgrade
    
    # 查找所有可用版本的包
    pip search packages
    
    # 更换清华源的pip(设为默认)
    pip install pip -U
    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
    
  • 相关阅读:
    青岛理工大学邀请赛总结
    HDU 1232 并查集/dfs
    HDU 1556
    HDU 5228
    POJ1011
    线段树(数组实现)
    NOIP2008 普及组T1 ISBN号码 解题报告-S.B.S.
    NOIP2008 普及组T4 立体图 解题报告-S.B.S.(施工未完成)
    noip2008普及组4题题解-rLq
    noip2008普及组3题题解-rLq
  • 原文地址:https://www.cnblogs.com/liangjianli/p/11498932.html
Copyright © 2020-2023  润新知