Miniconda概述

Miniconda是什么?

要解释Miniconda是什么,先要弄清楚什么是Anaconda,它们之间的关系是什么?

而要知道Anaconda是什么,最先要明白的是搞清楚什么是Conda,参考:Conda简单教程

一言以蔽之,Conda是Python中用于管理依赖包和虚拟环境的工具,Anaconda是一个带有Conda工具的软件包(附带了Conda、python和150多个科学软件包及其相关的包),而Miniconda是一个Anaconda的轻量级替代,默认只包含了Python和Conda。

也就是说,安装了Miniconda,就可以直接使用Python和Conda了。

为什么要使用Miniconda呢?不使用Miniconda难道不可以吗?

当然可以不用Miniconda,没有Miniconda也不妨碍使用Python,实际上没有Minicoda在Python中也是可以实现依赖包和虚拟环境管理的。

Python自带的包管理工具为pip,虚拟环境管理可以使用virtualenv(需要单独安装:pip install virtualenv),但是在这么一些情况下使用Miniconda能够比较方便的解决问题。

场景1:系统本身已经存在了Python2(大多数Linux系统都会自带),但是应用程序运行环境需要Python3,此时使用Miniconda可以在不直接升级系统本身自带的Python2的情况下使用Python3。当然直接升级系统本身自带的Python2为Python3也是可以的,但是存在一定的危险性,这样做可能会破坏某些系统工具的运行环境。比如在产线环境需要临时使用Python3环境,是不太可能允许直接去升级系统自带的Python2的。关于升级Python2到Python3可以参考:Python2升级到Python3

场景2:系统需要存在多个环境,便于在Python2和Python3之间来回切换,使用Miniconda能很好地解决这个需求。

场景3:系统本身不带Python,手动安装Python可能比较慢,直接安装Miniconda即可使用Python环境。

安装Miniconda

Miniconda可以从国内镜像站下载,比如:清华大学开源软件镜像站

至于需要下载哪个版本的Miniconda,需要根据使用Python版本的需求而定,详见:Miniconda,而Anaconda支持的Python版本信息则详见传送门

# 系统本身的Python版本为:3.6.9
$ python -V
Python 3.6.9 $ wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda-3.9.1-Linux-x86_64.sh
$ bash Miniconda-3.9.1-Linux-x86_64.sh

根据提示信息一路安装完毕,最后会将miniconda添加到环境变量PATH中。

# added by Miniconda 3.9.1 installer
export PATH="/home/zhangsan/miniconda/bin:$PATH"

说明: 在不同的Linux发行版上安装Miniconda后,添加conda到PATH变量的方式可能有所不同,但通常都是在~/.bashrc文件中实现的。

安装完毕之后重新登陆系统,查看conda信息:

$ conda info
Current conda install: platform : linux-64
conda version : 3.9.1
conda-build version : not installed
python version : 2.7.9.final.0
requests version : 2.25.0
root environment : /home/zhangsan/miniconda (writable)
default environment : /home/zhangsan/miniconda
envs directories : /home/zhangsan/miniconda/envs
package cache : /home/zhangsan/miniconda/pkgs
channel URLs : http://repo.continuum.io/pkgs/free/linux-64/
http://repo.continuum.io/pkgs/free/noarch/
http://repo.continuum.io/pkgs/pro/linux-64/
http://repo.continuum.io/pkgs/pro/noarch/
config file : None
is foreign system : False

查看Python信息:

# 注意:此时查看Python版本信息时已经是Conda自带的默认Python版本了
$ python -V
Python 2.7.9 :: Continuum Analytics, Inc.

执行conda -h可以查看详细用法。

说明:

当把conda添加到PATH变量时,登录系统后会进入到conda中激活的环境中,此时执行python -V查看到的版本信息是conda环境中的Python。如果不再使用conda了,可以将conda从PATH变量中移除即可,如下所示:

$ cat .bashrc
# added by Miniconda 3.9.1 installer
# export PATH="/home/zhangsan/miniconda/bin:$PATH"

使用Miniconda

添加镜像源

安装完Miniconda之后首先要做的就是添加镜像源,便于快速下载相应模块包。

修改~/.condarc文件内容如下:

channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
- https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
- https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
- https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
- https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
- https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
- https://mirrors.ustc.edu.cn/anaconda/cloud/
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
ustc: http://mirrors.ustc.edu.cn/anaconda/pkgs/free/
alibaba : https://mirrors.aliyun.com/pypi/simple/ ssl_verify: true

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

管理虚拟环境

# 查看环境信息,当前环境会通过一个星号 (*) 标识
$ conda env list
# conda environments:
#
root * /home/zhangsan/miniconda

如上,默认的环境名称为root。

创建虚拟环境:

# 新建一个基于Python 3.6的环境,名称为myenv
$ conda create -n myenv python=3.6.2
$ conda env list
# conda environments:
#
myenv /home/zhangsan/miniconda/envs/myenv
root * /home/zhangsan/miniconda

创建完新环境之后查看环境列表,默认还是root环境。

选择虚拟环境:

$ source activate myenv
discarding /home/zhangsan/miniconda/bin from PATH
prepending /home/zhangsan/miniconda/envs/myenv/bin to PATH # 在指定环境中查看Python版本时正是创建环境时指定的版本
$ python -V
Python 3.6.2 :: Continuum Analytics, Inc.

退出虚拟环境:

# 退出当前所处的虚拟环境
$ source deactivate
discarding /home/zhangsan/miniconda/envs/myenv/bin from PATH # 再次查看Python版本时就是conda默认root环境的Python版本
$ python -V
Python 2.7.9 :: Continuum Analytics, Inc.

删除虚拟环境:

# 删除指定名称的虚拟环境
$ conda env remove -n myenv
$ conda env list
# conda environments:
#
root * /home/zhangsan/miniconda

管理软件包

# 查看在当前所在虚拟环境中已经安装的包
$ conda list # 在当前所在的虚拟环境中安装软件包
$ conda install <package_name> # 在指定虚拟环境中安装包
$ conda install --name <env_name> <package_name> # 卸载当前所在虚拟环境下的指定包
$ conda remove <package_name> # 卸载指定虚拟环境下的指定包
$ conda remove --name <env_name> <package_name> # 升级当前所在虚拟环境下的指定包
$ conda update <package_name>

说明:

在conda管理的虚拟环境中,软件包的管理除了可以使用conda实现,同样还可以直接使用pip(使用pip安装的软件包在对应虚拟环境目录中,与其他虚拟环境是隔离开的,互不影响)。

但是使用pip安装的软件包后,在使用conda list查看时会提示Could not extract name and version,例如:

# 使用conda无法正常安装selenium,使用pip安装selenium后执行`conda list`显示如下信息
(myenv)[root@VM-24-10-centos ~]# conda list
# packages in environment at /root/miniconda/envs/myenv:
#
Could not extract name and version from: 'Package Version'
Could not extract name and version from: '---------- ---------'
Could not extract name and version from: 'certifi 2016.2.28'
Could not extract name and version from: 'pip 21.3.1'
Could not extract name and version from: 'selenium 3.141.0'
Could not extract name and version from: 'setuptools 36.4.0'
Could not extract name and version from: 'urllib3 1.26.12'
Could not extract name and version from: 'wheel 0.29.0'
certifi 2016.2.28 py36_0 defaults
openssl 1.0.2l 0 defaults
pip 9.0.1 py36_1 defaults
python 3.6.2 0 defaults
readline 6.2 2 <unknown>
setuptools 36.4.0 py36_1 defaults
sqlite 3.13.0 0 defaults
tk 8.5.18 0 defaults
wheel 0.29.0 py36_0 defaults
xz 5.2.3 0 defaults
zlib 1.2.11 0 defaults

【参考】

https://blog.csdn.net/xcntime/article/details/113874750 解决conda创建新环境慢 conda install 速度慢 报错问题

https://developer.aliyun.com/article/693858 python开发之虚拟环境管理:virtualenv、virtualenvwrapper、pycharm

https://blog.csdn.net/NDKHBWH/article/details/101299078 Anaconda查找包,下载包,更新包,删除包

https://www.jianshu.com/p/854b11a18bef Miniconda安装及其使用

Miniconda安装和使用的更多相关文章

  1. Miniconda安装scrapy教程

    一.背景说明 前两天想重新研究下Scrapy,当时的环境是PyCharm社区版+Python 3.7.使用pip安装一直报错 “distutils.errors.DistutilsPlatformEr ...

  2. Miniconda 安装 & Pip module 安装 & Shell 脚本调用 Miniconda 虚拟环境手册(实战项目应用)

    (实战项目应用) 1. 下载Miniconda 两个安装方式: 方式1:wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Min ...

  3. Miniconda 安装测试

    背景: conda 是一个python的计算环境,minicoda 可以看做是conda的精简版 官网: https://conda.io/miniconda.html 安装: miniconda 支 ...

  4. Anaconda(miniconda)安装及使用--转

    https://www.waitalone.cn/anaconda-install-error.html         3,224   1.Anaconda概述 Anaconda是一个用于科学计算的 ...

  5. Miniconda安装 虚拟环境创建 与包管理

    安装python 之前安装python包,导致了python里面的包不兼容,用管理工具卸载也下载不掉,重新安装也安装不上,没有办法只能卸掉python重装. 安装Anaconda Anaconda指的 ...

  6. miniconda安装jupyter

    1.安装jupyter 由于miniconda是anaconda的简化版,只有一个prompt: 安装jupyter,只需要打开prompt的dos窗口,输入命令pip install jupyter ...

  7. miniconda安装及使用

    conda环境配置 安装conda [清华源下载地址](https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/) 官网或百度云网盘下载对应版本 ...

  8. [Linux] Miniconda安装及其使用

    集群环境下安装conda进行软件管理.Miniconda是Anaconda的简化版,对于一般需求而言就够用了.因此,我这里安装Minconda3进行软件安装管理. 安装 Miniconda下载地址,版 ...

  9. 使用Miniconda安装Scrapy遇到的坑

    最近在看小甲鱼的书,学习学习爬虫,其中有一块是通过Miniconda3安装Scrapy,结果却遇到了下面的错误:fatal error in launcher:unable to create pro ...

  10. 如何安装miniconda(python虚拟环境)

    anaconda是用于科学计算的python发行版本(可用于python虚拟环境的管理),miniconda是简化版的anaconda 1.下载安装miniconda 下载miniconda 因为An ...

随机推荐

  1. [转帖]MySQL ALTER TABLE: ALTER vs CHANGE vs MODIFY COLUMN

    https://www.cnblogs.com/pachongshangdexuebi/p/5029152.html ALTER COLUMN 语法: ALTER [COLUMN] col_name ...

  2. [转帖]实战瓶颈定位-我的MySQL为什么压不上去–写场景

    https://plantegg.github.io/2023/06/30/%E5%AE%9E%E6%88%98%E7%93%B6%E9%A2%88%E5%AE%9A%E4%BD%8D-%E6%88% ...

  3. 【转帖】如何使用route管理路由表

    这里是引用 route快捷使用方法 我们一般管理路由有使用route命令 本身route使用大致有两种方法:但其实 在实际操作中,我们熟练掌握一种方法就可以了. route 有以下6种操作方法: 1) ...

  4. [转帖]Windows自带硬盘测试工具使用教程

    本教程主要讲解Windows自带的硬盘测试工具的使用,不用再安装第三方软件了.到底准不准就不知道啦,下面我们来看看如何使用吧~ 1. 进入cmd 快速进入cmd 主要如果进入后,使用命令直接闪退,就是 ...

  5. PG数据库异步流复制

    PG数据库异步流复制 背景说明 最近想进行一个数据库高可用课题的研究. 因为之前某种原因,这次选择的是PG数据库. 为了简单起见, 暂时采用PG异步流复制的场景. 这次仅是为了测试, 不考虑高可用绿色 ...

  6. 程序调试利器——GDB使用指南

    作者:京东科技 孙晓军 # 1\. GDB介绍 GDB是GNU Debugger的简称,其作用是可以在程序运行时,检测程序正在做些什么.GDB程序自身是使用C和C++程序编写的,但可以支持除C和C++ ...

  7. 浅析大促备战过程中出现的fullGc,我们能做什么?

    作者:京东科技 白洋 前言: 背景: 为应对618.双11大促,消费金融侧会根据零售侧大促节奏进行整体系统备战.对核心流量入口承载的系统进行加固优化,排除系统风险,保证大促期间系统稳定. 由于大促期间 ...

  8. 让你彻底理解TypeScript中的readonly

    1.readonly的讲解 readonly修饰符,首先是一个关键字 对类中的属性成员进行修饰修饰之后,该属性成员就不能修改了.只能够进行访问 在构造函数中是可以对只读属性(readonly)进行修改 ...

  9. Element-UI中Drawer抽屉去除标题自带黑色边框

    当点击事件drawer==true时,抽匣回打开 这时抽匣的标题会出现一个难看的蓝色边框,一会就会消失,但是好丑,所以要去掉它 解决方法 /deep/ :focus { outline: 0; } v ...

  10. 如何处理开发环境没有问题,线上环境有问题这个bug

    解决思路 首先确认开发环境有没有这个问题: 如果没有这个问题: 将你的地址切换为线上的环境,看看线上环境有没有这个问题: 如果切换为线上环境有这个问题,就可以调试了: 如果切换为线上环境没有这个问题, ...