1、环境隔离的问题

在使用python时,常常遇到的问题:

pip安装库A,依赖库B-2.1版本

pip安装库C,以来库B-3.1版本,安装会提示库B的版本冲突错误。

这种情况下就需要做环境隔离

conda自带环境隔离功能,可以有限隔离管理多个python环境

2、安装conda

https://www.anaconda.com/distribution/下载anaconda, 我这里下载的是Anaconda3-2019.07-Linux-x86_64.sh

转到下载目录下, 执行命令安装anaconda:

bash Anaconda3-2019.07-Linux-x86_64.sh

根据提示安装,特别是最后的conda init询问,直接点yes

3、备份conda原始环境

conda安装完成后,重新打开shell,或者执行一次source ~/.bashrc后, 会默认进入base环境,base环境包括了anaconda默认安装的大量库。

由于后续可能会基于base环境安装各种附加库,所以,一般先进行base环境的备份,方式就是创建一个新的backup环境,直接从base环境中克隆

创建backup环境的命令如下:

conda create -n backup --clone base

上述指令表示从base环境中clone一份新环境,新环境名字为backup

4、创建项目环境

备份之后,就可以基于backup环境,克隆各种项目环境了

比如,我需要创建一个用于富途量化开发的环境:

conda create -n futu --clone backup

在该环境下,我需要安装futu-api:

pip insall futu-api

那么futu-api库只有在该环境中才有,在base、backup中都不存在。

如果觉得base环境过于臃肿,可以创建一个新的简洁环境, conda可以管理多个python,即使python的版本不一样,这个是比venv强大的地方。

创建一个python3.7的简洁环境:

conda create -n py32 python=3.7

创建一个python2.7的简洁环境:

conda create -n py27 python=2.7

注意:创建环境时,如果只是指定了名字,没有指定package,那么实际上指向的都是同一个环境

如:

conda create -n test1
conda create -n test2

上述的test1和test2环境中,隔离的只是conda install的内容,而pip安装的内容完全共享,会相互干扰,这是因为使用了同一套python环境的缘故, 所以一般不要这么做。

5、环境切换

通过conda activate <envname>进行环境切换

通过conda deactivate退出环境

如,进入futu环境:

conda activate  futu

进入环境后,命令行中会提示相应的环境标志:

conda进行python环境隔离的更多相关文章

  1. conda配置python混合开发环境一站式入门【全平台】

    下载安装 清华的镜像 [https://mirror.tuna.tsinghua.edu.cn/help/anaconda/] 官方说明 [http://conda.pydata.org/docs/u ...

  2. Anaconda+用conda创建python虚拟环境

    Anaconda+用conda创建python虚拟环境 Anaconda与conda区别 conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理与环境管理.包管理与pip的使用类似,环境 ...

  3. 用conda管理Python包

    用conda管理Python包 conda是一个很好的包管理工具,在用了Anaconda之后一直不知道怎么用conda进行管理,其实很简单,就是没人教,慢慢自己摸索了一点.直接在Anaconda的命令 ...

  4. conda设置Python虚拟环境

    conda设置Python虚拟环境     版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Co_zy/article/details/7741261 ...

  5. 写文章 使用conda管理python环境

    使用conda管理python环境

  6. Conda和Python的国内安装源

    Conda和Python的国内安装源 Windows系统: 更换python国内源的方法. 在"C:\Users[xxxx]\pip\pip.ini"文件中配置如下内容(没有则新建 ...

  7. Anaconda用conda创建python虚拟环境

    Anaconda用conda创建python虚拟环境 一.简介 conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理与环境管理.包管理与pip的使用类似,环境管理则允许用户方便地安装不 ...

  8. 使用conda管理python环境和包

    操作系统:CentOS7使用virtualenv管理python虚拟环境virtualenv是一款轻量级第三方虚拟环境管理工具,不像Anaconda大小达上百M,virtualenv大小只有10M左右 ...

  9. Conda 配置 Python 环境

    目录 前言 一.Conda 是什么 二.如何获取 三.使用 Conda 命令配置多环境 1.创建新环境 2.激活新环境 3.配置新环境 4.退出新环境 5.检查所有环境 6.检查所有安装的包 7.删除 ...

随机推荐

  1. PAT甲级1019水题飘过

    题目分析: 将n转成对应大小的b进制数之后判断是否为回文串,是则Yes,否则No #include<iostream> using namespace std; ]; //存放从0开始b进 ...

  2. HDU - 6643: Ridiculous Netizens(点分治+依赖背包+空间优化)

    题意:给定带点权的树,问多少个连通块,其乘积<=M; N<=2000,M<1e6; 思路:连通块-->分治: 由于普通的树DP在合并的时候复杂度会高一个M,所以用依赖背包来做. ...

  3. 如何开发一个异常检测系统:异常检测 vs 监督学习

    异常检测算法先是将一些正常的样本做为无标签样本来学习模型p(x),即评估参数,然后用学习到的模型在交叉验证集上通过F1值来选择表现最好的ε的值,然后在测试集上进行算法的评估.这儿用到了带有标签的数据, ...

  4. ASP.NET 内容管理系统CMS

    一.Umbraco 项目地址: http://umbraco.org/ Umbraco是一个开放源码的CMS内容管理系统,基于asp.net建立,使用mssql进行存储数据. 使用Umbraco ,设 ...

  5. 一个.java文件中是否可以有多个类

    前段时间,有个同事问到我这个问题:一个.java文件中是否可以有多个类? 答案:可以有多个类,但最多只能有一个被public修饰的class. 且若这个.java文件中有一个public类型的clas ...

  6. 基本例程(4-1)手势识别C++ 和简单形状匹配

    扩展库https://blog.csdn.net/Taily_Duan/article/details/52130135 opencv3.3+扩展库 /************************ ...

  7. my OD

    1 复习c文件处理内容 2 编写myod.c 用myod XXX实现Linux下od -tx -tc XXX的功能 main与其他分开,制作静态库和动态库 编写Makefile 5 提交测试代码和运行 ...

  8. codeforces B. A and B 找规律

    Educational Codeforces Round 78 (Rated for Div. 2) 1278B - 6 B. A and B  time limit per test 1 secon ...

  9. firewall-cmd命令的富语言(richlanguage)示例

    一.为协议“ah”启用新的IPv4和IPv6连接 firewall-cmd --permanent --add-rich-rule 'rule protocol value="ah" ...

  10. 使用jenkins exporter 监控jenkins 构建任务

    jenkins 提供了rest api,我们可以基于rest api 暴露prometheus metrics,社区已经有了好多 开源的实现了,使用起来也比较方便,以下集成几个进行简单的测试 环境准备 ...