conda切换环境_Python多环境管理,你需要知道的几种方法
简介
如果你使用Python开发,对于不同的开发框架或应用肯定会有Python多版本共存的情况,此时Python多环境管理工具就可以帮你快速解决此问题,以便将精力专注开发。
今天我们就来介绍下Python多环境管理的几种工具:
- Anaconda
- Virtualenv
- Virtaulenvwrapper
通过对以上工具的讲解,你以后就再也不用担心Python多版本共存的问题了。
Anaconda
Anaconda多应用在科学计算中,但是它可以很方便的对各个Python环境进行切换;而且自动包管理器conda可以安装软件包的多个版本和依赖。换句话说,我们可以使用conda命令安装各种Python工具,就像yum和pip一样方便。
1.安装部署
wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh bash Miniconda2-latest-Linux-x86_64.sh #自动写入环境变量vim /root/.bashrc# added by Miniconda2 4.2.12 installerexport PATH="$PATH:/usr/local/miniconda2/bin"#测试安装是否成功conda list
安装过程是交互的,安装路径为 /usr/local/miniconda2 。
注意:
- 如果你已经安装了python环境,最好将conda的环境变量加在PATH最后,否则会优先使用/usr/local/miniconda2/bin下的python命令,造成不必要的麻烦。
- conda包括完整版的anaconda和最小化版miniconda。anaconda包含720多个开源安装包,安装完成至少需要3G空间;miniconda安装需要大约400M空间。我们使用miniconda就足够。
2.管理环境
(1)创建新的环境
conda create -n science numpy scipy matplotlib或conda create -n science -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ numpy scipy matplotlib或
通过以上命令都会创建一个名为science的环境,默认使用python2(若使用python3需要指定版本),并且安装numpy scipy matplotlib模块。不过由于使用官方的安装源很慢,我们在此使用国内的清华安装源。
(2)查看当前所有环境
#环境列表conda info --envs# conda environments:#science * /usr/local/miniconda2/envs/scienceroot /usr/local/miniconda2#切换环境变量source activate science(science) root@test:~# source activate root
(3)删除环境
conda remove -n science_python3 --all
(4)添加国内安装源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --set show_channel_urls yes#查看配置conda config --show
Anaconda环境管理中除了使用conda来安装使用的python依赖包外,还可以使用pip,但是必须是“/usr/local/miniconda2”路径下的,否则将会使用操作系统自动的python,安装的包并不会加载到Anaconda环境中。
Virtualenv
Virtaulenv的原理是把系统Python复制一份到Virtualenv的环境,用命令source venv/bin/activate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令Python和pip均指向当前的virtualenv环境。Virtaulenv相较于Anaconda,更多应用在开发环境。
1.安装部署
pip install virtualenv 或 easy_install virtualenv
2.创建虚拟环境
[root@test:/virtual_protect]# mkdir /virtual_project[root@test:/virtual_protect]# cd virtual_project[root@test:/virtual_protect]# virtualenv venvNew python executable in /root/virtual_protect/venv/bin/pythonInstalling setuptools, pip, wheel...done.
virtualenv venv 命令将会在virtual_project目录中创建一个文件夹,包含了Python可执行文件,以及 pip 库的一份拷贝,这样就能安装其他包了。
如果此时你的系统里有其他版本python,可以使用-p或–python参数来指定虚拟环境使用哪个版本的python,如下:
virtualenv -p /usr/local/python3 venv
3.启动虚拟环境
[root@test:/virtual_protect]# source venv/bin/activate(venv) [root@test:/virtual_protect]# pip listpip (8.1.2)setuptools (28.3.0)wheel (0.30.0a0)
登陆虚拟环境通过pip查看安装的包并没有系统自带python中安装的,这是因为virtualenv 运行时,默认自带–no-site-packages参数,将不会包含系统自带python安装的包。我们可以通过使用–system-site-packages参数来使虚拟环境包含系统python安装的包。
还有一种方法可以使虚拟环境包含系统自动python安装的包:
#导出包到指定文件中pip freeze > requirements.txt#安装指定的包pip install -r requirements.txt
4.退出虚拟环境
deactivate
对于Virtualenv来说并不会像Anaconda那样帮你安装其他版本的Python,它是依赖于你的操作系统已经安装的Python,在创建虚拟环境时指定Python版本。
Virtaulenvwrapper
Virtaulenvwrapper是Virtualenv的扩展包,用于更方便管理虚拟环境,它可以将将所有虚拟环境整合在一个目录下、管理(新增,删除,复制)虚拟环境、切换虚拟环境等。
1.安装配置
#安装pip install virtualenvwrapper#创建目录用来存放虚拟环境mkdir /virtualenv_project#设置环境变量[root@test:~/virtual_protect]# vim ~/.bashrcexport WORKON_HOME=~/virtualenv_projectsource /usr/local/bin/virtualenvwrapper.sh[root@test:~/virtual_protect]# source ~/.bashrc
2.创建虚拟环境
[root@test:~/virtual_protect]# mkvirtualenv venv1New python executable in /root/virtualenv_project/venv1/bin/pythonInstalling setuptools, pip, wheel...done.[root@test:~/virtual_protect]# mkvirtualenv venv2New python executable in /root/virtualenv_project/venv2/bin/pythonInstalling setuptools, pip, wheel...done.
其中mkvirtualenv命令类似与virtualenv命令,也可以通过-p、–no-site-packages、–system-site-packages等参数进行配置。
3.列出虚拟环境并切换
#列出当前的虚拟环境[root@test:~/virtual_protect]# lsvirtualenv -bvenv1venv2#切换虚拟环境 [root@test:~/virtual_protect]# workon venv1(venv1) [root@test:~/virtual_protect]# workon venv2(venv2) [root@test:~/virtual_protect]#
4.退出并删除虚拟环境
deactivatedeactivate
Virtaulenvwrapper只是是Virtualenv的扩展包,底层是需要和Virtualenv配合使用的,只不过使操作更简便些罢了。
总结
经过以上介绍,我们已经学会了Python的多环境管理,也了解了Anaconda、Virtualenv、Virtaulenvwrapper的工作方式及应用领域,我们根据自己的实际情况按需选择。
conda切换环境_Python多环境管理,你需要知道的几种方法相关推荐
- android 漫画切换,Android逆向之路---让我们试试另一种方法看漫画-(2)
前言 上次我们分析到了快看漫画的协议部分,这次我们根据他的协议来手动写个脚本,然后执行以后,可以把他的漫画自动下载到电脑上面, 然后自动拼接图片,这样就可以实现在电脑上当成一个长图来看漫画了,没有广告 ...
- python 切换环境_python多环境切换及pyenv使用过程详解
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash 下载如下报错,则安装nss ...
- python 切换环境_python 使用 pyenv 多环境切换
利用pyenv 实现python 多版本切换 下载curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/ ...
- 用python打开视频_python读取视频流提取视频帧的两种方法
本文实例为大家分享了python读取视频流提取视频帧的具体代码,供大家参考,具体内容如下 方法一:通过imageio库和skimage库 1. 安装环境: pip install imageio pi ...
- python中保留两位小数的编写程序_Python中保留两位小数的几种方法
保留两位小数,并做四舍五入处理 方法一: 使用字符串格式化 >>> a = 12.345 >>> print("%.2f" % a) 12.35 ...
- python字典去最值_python 比较字典value的最大值的几种方法
python中获取字典的key列表和value列表 # -*- coding: utf-8 -*- # 定义一个字典 dic = {'剧情': 11, '犯罪': 10, '动作': 8, '爱情': ...
- python中一个汉字是几个字符_Python中每次处理一个字符的5种方法
目的 对字符串的每个字符进行处理,其实每个字符(Char)就是一个长度为1的字符串. 方法 1.使用内建函数list() 复制代码 代码如下: >>> A_string='Pytho ...
- python读取png图片只有一个图层_python实现读取并显示图片的两种方法
在 python 中除了用 opencv,也可以用 matplotlib 和 PIL 这两个库操作图片.本人偏爱 matpoltlib,因为它的语法更像 matlab. 一.matplotlib 1. ...
- concurrentbag 删除指定元素_Python实现列表索引批量删除的5种方法_python
这篇文章主要介绍了Python实现列表索引批量删除的5种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 最近用Java做项目 ...
最新文章
- qt练习11 鼠标,按键,滚轮事件学习
- UIAlertController
- 【转】校园网综合布线系统设计方案
- keras用cpu加速_在训练某些网络时,Keras(Tensorflow后端)在GPU上比在CPU上慢CPU
- java画笔覆盖在界面_Java学习笔记:swing画笔工具Graphics,刷新页面,键盘事件,随机数等【诗书画唱】...
- 2021年中国动物血浆制品及其衍生物市场趋势报告、技术动态创新及2027年市场预测
- 人力节省 50%,研发效能提升 40%,阿里 Serverless 架构落地实践
- 微软开放技术发布开源 Jenkins 插件以将 Windows Azure Blob 服务用的开作存储库
- 数据分析的数据来源于哪
- ADO.NET Entity Framework 4.1 中的代码优先
- Altium Designer 18简单入门介绍与分享
- 视觉SLAM十四讲学习笔记——ch10 后端2
- 随机森林算法原理梳理
- 计算机专业买哪一款华硕电脑好,华硕笔记本哪款好 如何挑选笔记本电脑
- 用分治法解决青蛙跳问题(斐波那契数列)
- python中列表常用方法
- 十分钟搞定SSD1963液晶屏驱动
- 贪心(Greedy Algorithm)
- 华为美女小姐姐,被外派墨西哥后,发生的事...
- ADVPT-C++复习准备