virtualenv实现多个版本Python共存


Posted in Python onAugust 21, 2017

virtualenv创建一个拥有自己安装目录的环境, 这个环境不与其他虚拟环境共享库, 能够方便的管理python版本和管理python库。主要解决不同项目之间环境冲突的问题。

小技巧

某些开发包在下载的时候会出现下载错的的情况,如果配置国内镜像下载,那么出错的几率将会大大降低。使用镜像源很简单,用-i指定就行了:

sudo pip install -i https://pypi.douban.com/simple/ saltTesting

例如现在需要安装django环境

virtualenv实现多个版本Python共存

virtualenv使用

如果需要卸载django可以使用pip uninstall django

virtualenv基本使用 安装之后需要新建virtualenv的独立环境,具体可以查看其帮助命令:

virtualenv实现多个版本Python共存

基本命令

常用的参数有:

-p:指定一个版本python环境;通常当你的系统中安装了多个python版本时会用到;默认情况下virtualenv会优先选取它的宿主python环境,即它安装在那个python版本下就会默认选择哪个版本作为默认python隔离环境。
--no-site-packages:不使用系统环境的python安装包,即隔离包中不能使用真实python环境的安装包;当前版本这个选项是默认的。
--system-site-packages:与上面相反,使隔离环境能访问系统环境的python安装包
--distribute:copy一个python环境的分支,默认会安装setup、pip、wheel等基础模块

virtualenv test,使用该命令在指定的路径下创建Python环境,默认与系统环境一致。如果想要进入该虚拟环境则要进入test/Scripts/文件夹下,运行activate.bat,在Linux下在bin目录下,运行命令为source xx/xx/activate退出命令为deactivate.bat

virtualenv实现多个版本Python共存

指定其他Python环境virtualenv -p C:\Python27\python2.exe py2

快捷配置

基于virtualenv的虚拟环境管理工具

pip install virtualenvwrapper-win

安装完成后配置环境变量,如图所示。

virtualenv实现多个版本Python共存
WORKONHOME

之后可以用workon展示虚拟环境,mkvirtualenv xx创建虚拟环境,workon xxx进入虚拟环境

其它

  1. 使用pip安装时可能提示找不到一些文件,可以到这里来查找whl文件,主要针对Windows用户file,下载后进入虚拟环境使用pip安装即可使用
  2. mkvirtualenv创建其它版本的虚拟环境,mkvirtualenv --python=C:\Python27\python2.exe py2scrapy
  3. linux下安装virtualenvwrapper后需要配置,先find查找virtualenvwrapper.sh

virtualenv实现多个版本Python共存
修改配置文件

virtualenv实现多个版本Python共存
修改内容

virtualenv实现多个版本Python共存
重新加载配置

Python 相关文章推荐
详解Python的单元测试
Apr 28 Python
python清除字符串里非数字字符的方法
Jul 02 Python
判断网页编码的方法python版
Aug 12 Python
Python使用正则表达式抓取网页图片的方法示例
Apr 21 Python
用python做一个搜索引擎(Pylucene)的实例代码
Jul 05 Python
在python2.7中用numpy.reshape 对图像进行切割的方法
Dec 05 Python
对python For 循环的三种遍历方式解析
Feb 01 Python
django中forms组件的使用与注意
Jul 08 Python
Django 反向生成url实例详解
Jul 30 Python
django实现支付宝支付实例讲解
Oct 17 Python
Python基于数列实现购物车程序过程详解
Jun 09 Python
使用scrapy ImagesPipeline爬取图片资源的示例代码
Sep 28 Python
基于Python对象引用、可变性和垃圾回收详解
Aug 21 #Python
python 垃圾收集机制的实例详解
Aug 20 #Python
python 实现tar文件压缩解压的实例详解
Aug 20 #Python
详解Python 序列化Serialize 和 反序列化Deserialize
Aug 20 #Python
Python中input与raw_input 之间的比较
Aug 20 #Python
Python 基础教程之str和repr的详解
Aug 20 #Python
Python实现爬取需要登录的网站完整示例
Aug 19 #Python
You might like
php阻止页面后退的方法分享
2014/02/17 PHP
php几个预定义变量$_SERVER用法小结
2014/11/07 PHP
php将图片保存入mysql数据库失败的解决方法
2014/12/27 PHP
Zend Framework分发器用法示例
2016/12/11 PHP
PHP登录(ajax提交数据和后台校验)实例分享
2016/12/29 PHP
ThinkPHP使用getlist方法实现数据搜索功能示例
2017/05/08 PHP
toString()一个会自动调用的方法
2010/02/08 Javascript
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
JavaScript高级程序设计 阅读笔记(四) ECMAScript中的类型转换
2012/02/27 Javascript
JavaScript自执行闭包的小例子
2013/06/29 Javascript
Javascript快速排序算法详解
2014/12/03 Javascript
js中this用法实例详解
2015/05/05 Javascript
js实现简单秒表走动的时钟特效
2020/03/25 Javascript
JavaScript实现下拉列表框数据增加、删除、上下排序的方法
2015/08/11 Javascript
JavaScript实现页面跳转的方式汇总
2016/05/16 Javascript
深入分析node.js的异步API和其局限性
2016/09/05 Javascript
nodejs mysql 实现分页的方法
2017/06/06 NodeJs
实现微信小程序的wxml文件和wxss文件在webstrom的支持
2017/06/12 Javascript
vue-cli 3.x 修改dist路径的方法
2018/09/19 Javascript
vue实现form表单与table表格的数据关联功能示例
2019/01/29 Javascript
ES6中字符串的使用方法扩展
2019/06/04 Javascript
JavaScript使用表单元素验证表单的示例代码
2019/08/20 Javascript
JavaScript实现Excel表格效果
2020/02/07 Javascript
Python利用matplotlib做图中图及次坐标轴的实例
2019/07/08 Python
python paramiko远程服务器终端操作过程解析
2019/12/14 Python
Python高阶函数、常用内置函数用法实例分析
2019/12/26 Python
高考考python编程是真的吗
2020/07/20 Python
仿酷狗html5手机音乐播放器主要部分代码
2013/05/15 HTML / CSS
详解三种方式实现平滑滚动页面到顶部的功能
2019/04/23 HTML / CSS
《生命 生命》教学反思
2014/04/19 职场文书
大学生作弊检讨书
2014/09/11 职场文书
面试自我评价范文
2014/09/17 职场文书
2014年办公室文员工作总结
2014/11/12 职场文书
2014年小学图书室工作总结
2014/12/09 职场文书
2015年招商引资工作总结
2015/04/25 职场文书
详解用Python把PDF转为Word方法总结
2021/04/27 Python