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. [转帖]7.5 TiKV 磁盘空间占用与回收常见问题

    https://book.tidb.io/session4/chapter7/compact.html TiKV 作为 TiDB 的存储节点,用户通过 SQL 导入或更改的所有数据都存储在 TiKV. ...

  2. [转帖]看6大国产CPU加速替代,谁才是“王者”选手?

    https://baijiahao.baidu.com/s?id=1761150458273739276&wfr=spider&for=pc 2023-03-23 17:33湖北匠心计 ...

  3. Linux 开启防火墙 避免非干系人误操作的处理

    公司里面进行系统集成测试. 不想让开发能够更改我的服务器信息, 但是改密码又太麻烦了. 想了想还是用 防火墙好一些. 第一步 开启防火墙 systemctl enable firewalld syst ...

  4. Raid卡在Write back 与Write through 时的性能差异

    还是读姜老师的 mysql技术内核innodb存储引擎这本书里面的内容. 之前知道raid卡的设置会影响性能, 预计也是十几倍的性能差距, 但是从来没有用数据库进行过验证 书中有针对不通raid卡的设 ...

  5. 慢SQL的致胜法宝

    大促备战,最大的隐患项之一就是慢SQL,对于服务平稳运行带来的破坏性最大,也是日常工作中经常带来整个应用抖动的最大隐患,在日常开发中如何避免出现慢SQL,出现了慢SQL应该按照什么思路去解决是我们必须 ...

  6. Ant Design Vue数字输入框InputNumber 有值但是验证却不能够通过

    InputNumber 有值但是验证却不能够通过 今天遇见这样一个问题,InputNumber 输入框中有值 但是却却提示验证不能够通过 后来经过分析,怀疑是数据类型不正确, 后面经过验证,果然是数据 ...

  7. 【JS 逆向百例】元素ID定位加密位置,某麻将数据逆向

    声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 逆向目标 目标:某在线麻将 ...

  8. docker上部署启动RabbitMQ

    在docker上部署启动RabbitMQ及使用 一.docker上部署启动RabbitMQ 1.查询rabbitmq镜像 docker search rabbitmq:management 2.拉取r ...

  9. Linux服务器Crontab定时任务配置

    1.检查linux系统是否有crontab rpm -qa | grep crontab 2.如果未安装进行安装 yum -y install vixie-cron yum -y install cr ...

  10. centos7.9离线安装MongoDB4.4.17

    前言 MongoDB 5.0开始要求CPU支持avx指令集,参考https://mp.weixin.qq.com/s/6FFXih1DEZYDFOk1hCu69w 环境 CentOS 7.9.2009 ...