python版本管理神器miniconda使用指南,纯干货!

miniconda软件下载及安装

anaconda软件包是python的一种发行版本,安装包大约四百多至五百多兆,安装好后大约需要2个多g的硬盘空间,我不太推荐这种安装方式,更推荐大家使用miniconda。

一般软件安装包我建议都去官网下载,但是conda官网下载速度实在太慢,我建议大家去清华大学开源软件镜像站下载,网址是:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/?C=M&O=D

安装包有windows平台、macos平台、linux平台三种,大家可以根据自己的操作系统下载合适的安装包。miniconda程序安装非常容易,在此不再赘述miniconda的安装过程。

conda设置国内软件源

  • 修改conda国内源:

    • conda配置文件位置:~/.condarc (Windows路径为:C:\Users.condarc)

    • 清华源配置,通常配置写入标准库的内容即可,若要使用附加库的内容才将其插入“ - defaults”那一行前面:

      • 标准库:

        channels:
          - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
          - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
          - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
          - defaults
        show_channel_urls: true
        
      • 附加库:

        # Conda Forge
          - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
        # msys2
          - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
        # bioconda
          - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
        #menpo
          - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
        # pytorch
          - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
        
    • 交大源配置:

      • 标准库:

        channels:
          - https://mirrors.sjtug.sjtu.edu.cn/anaconda/pkgs/main/
          - https://mirrors.sjtug.sjtu.edu.cn/anaconda/pkgs/free/
          - https://mirrors.sjtug.sjtu.edu.cn/anaconda/cloud/conda-forge/
          - defaults
        show_channel_urls: true
        
      • 附加库:

        # Conda Forge
          - https://mirrors.sjtug.sjtu.edu.cn/anaconda/cloud/conda-forge/
        # msys2
          - https://mirrors.sjtug.sjtu.edu.cn/anaconda/cloud/msys2/
        # bioconda
          - https://mirrors.sjtug.sjtu.edu.cn/anaconda/cloud/bioconda/
        #menpo
          - https://mirrors.sjtug.sjtu.edu.cn/anaconda/cloud/menpo/
        # pytorch
          - https://mirrors.sjtug.sjtu.edu.cn/anaconda/cloud/pytorch/
        
  • 修改pip国内源:

    • pip配置文件位置:~/.pip/pip.conf (Windows路径为:C:\Users\pip\pip.ini)

    • 阿里源配置:

      [global]
      index-url = https://mirrors.aliyun.com/pypi/simple/
      trusted-host=mirrors.aliyun.com
      timeout = 120
      
    • 华为源配置:

      [global]
      index-url = https://mirrors.huaweicloud.com/repository/pypi/simple
      trusted-host = mirrors.huaweicloud.com
      timeout = 120
      

conda下载更新及清理

建议conda只用来更新conda和python、下载和更新python包使用pip,因为清华源和交大源下载速度远远不及阿里源和华为源。

  • conda

    • 更新conda

      conda update conda
      
    • 更新python

      conda update python
      
    • 更新所有包

      conda update --all
      
    • 清理无用的安装包

      conda clean -p        # 清理无用的包
      conda clean -t        # 清理tar包
      conda clean -y --all  # 清理所有安装包及cache
      
  • pip (以下用pandas包举例)

    • 下载

      pip install pandas
      
    • 更新

      pip install --upgrade pandas
      
    • 删除

      pip uninstall pandas
      
    • 指定版本(2个等于号前面是包名后面是版本号)

      pip install pandas==1.1.4
      

conda管理虚拟环境

  • base环境

    若在上述.condarc文件中未配置关于auto_activate_base的设置,那么默认是true即启动终端时自动进入base环境。

    若要关闭自动进入base环境,使用下面的命令:

    conda config --set auto_activate_base false
    

    需要打开自动进入base环境,使用下面的命令:

    conda config --set auto_activate_base true
    
  • 创建自定义环境

    conda create --name py38 python=3.8
    

    命令解释:

    • –name后面指定环境的名字,名字最好是英文字母、下划线、数字的组合,建议不要用中文。

    • python=后面指定版本号。案例中指定了版本是3.8,下载时会定位仓库3.8版最新的包。

    • 上述案例中创建了一个名字叫py38、python版本是3.8的虚拟环境。

  • 进入与退出自定义环境

    • 进入自定义环境:

      conda activate py38
      
    • 退出自定义环境:

      conda deactivate
      
  • 删除自定义环境

    只能删除自定义环境,不能删除base环境。删除步骤如下:

    1. 退出自定义环境:

      conda deactivate
      
    2. 删除自定义环境:

      conda remove --name py38 --all
      
  • 查看所有环境

    conda env list
    

快速安装多个包

由于软件源的关系,我们下载和安装包时优先使用pip,那么新建了虚拟环境怎么快速下载多个需要的软件包呢?

  1. 在原环境导出包清单:

    pip list > list.txt
    
  2. 处理清单文件,注意要进入上面的list.txt所在目录,在该目录下创建reinstall.py文件,然后运行:

    with open("list.txt", mode='r', encoding='utf8') as f1,\
        open("list2.txt", mode='w', encoding='utf8') as f2:
            f1.readline()
            f1.readline()
            f2.write('pip install ')
            for i in f1:
                line = i.split()
                f2.write(line[0] + ' ')
    
  3. 进入虚拟环境一键pip:

    打开list2.txt,全部内容复制,然后打开终端,进入虚拟环境,再粘贴过来运行。

    1. 切换环境:

      conda activate py38
      
    2. pip安装包 (将上面的list2.txt文件内容ctrl+a、ctrl+c)粘贴(ctrl+v)过来,然后回车:

      pip install ***
      

      发生报错时的情况:

      1. 如果遇到下面的报错,那是提示你conda相关的包不能在虚拟环境里重复安装,将list.txt里面含conda的所有包名都删掉即可。

        ERROR: Could not find a version that satisfies the requirement conda-package-handling
        ERROR: No matching distribution found for conda-package-handling
        
      2. 少数版本冲突的情况,找到报错的包名,选择适合的版本即可。即前面案例中的pip install 包名=版本号。

python新旧版本讨论

  1. 目前发现的版本问题,在python3.8系列中numba包可以使用,但在python3.9系列中numba不能使用,推测是因为python3.9解释器解析语句方式相对python3.8变动很大,导致numba尚未完成更新。如果要用numba建议使用python3.8。
  2. python3.9解析语句方式调整后对于很多一行写的很复杂的语句解析及执行速度提升很大。建议有精力的朋友空余时间可以尝试将自己的项目放在新版本下进行测试,新版本整体运行速度比旧版本略有提升。
  3. 总之,有了miniconda神器,不再害怕版本问题,随时可以创建适合自己项目的版本,也随时可以尝试最新版本的python。建议多多尝试新版本。

你可能感兴趣的:(Python,miniconda,python)