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性能优化的20条建议
Oct 25 Python
Python随机读取文件实现实例
May 25 Python
利用Python暴力破解zip文件口令的方法详解
Dec 21 Python
Python对List中的元素排序的方法
Apr 01 Python
python3+PyQt5实现拖放功能
Apr 24 Python
对json字符串与python字符串的不同之处详解
Dec 19 Python
python 整数越界问题详解
Jun 27 Python
pandas的to_datetime时间转换使用及学习心得
Aug 11 Python
Python读入mnist二进制图像文件并显示实例
Apr 24 Python
Python 添加文件注释和函数注释操作
Aug 09 Python
python 实现socket服务端并发的四种方式
Dec 14 Python
Python实现视频自动打码的示例代码
Apr 08 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中计算字符串相似度的函数代码
2012/12/29 PHP
php防注入及开发安全详细解析
2013/08/09 PHP
php基于Snoopy解析网页html的方法
2015/07/09 PHP
PHP保存Base64图片base64_decode的问题整理
2019/11/04 PHP
在b/s开发中经常用到的javaScript技术
2006/08/23 Javascript
javascript提取URL的搜索字符串中的参数(自定义函数实现)
2013/01/22 Javascript
JQuery获取样式中的background-color颜色值的问题
2013/08/20 Javascript
详细介绍8款超实用JavaScript框架
2013/10/25 Javascript
通过location.replace禁止浏览器后退防止重复提交
2014/09/04 Javascript
Jquery常用的方法汇总
2015/09/01 Javascript
HTML5 Shiv完美解决IE(IE6/IE7/IE8)不兼容HTML5标签的方法
2015/11/25 Javascript
使用angularjs创建简单表格
2016/01/21 Javascript
jQuery插件pagination实现无刷新分页
2016/05/21 Javascript
jQuery过滤特殊字符及JS字符串转为数字
2016/05/26 Javascript
js实现加载更多功能实例
2016/10/27 Javascript
AngularJS用户选择器指令实例分析
2016/11/04 Javascript
javascript实现根据函数名称字符串动态执行函数的方法示例
2016/12/28 Javascript
在 Angular 中实现搜索关键字高亮示例
2017/03/21 Javascript
node.js 核心http模块,起一个服务器,返回一个页面的实例
2017/09/11 Javascript
create-react-app修改为多页面支持的方法
2018/05/17 Javascript
基于Vue-cli快速搭建项目的完整步骤
2018/11/03 Javascript
Python中的匿名函数使用简介
2015/04/27 Python
Python写的一个简单监控系统
2015/06/19 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
2017/12/14 Python
Python实现的求解最大公约数算法示例
2018/05/03 Python
用python简单实现mysql数据同步到ElasticSearch的教程
2018/05/30 Python
Python List cmp()知识点总结
2019/02/18 Python
pandas 数据结构之Series的使用方法
2019/06/21 Python
浅谈python输出列表元素的所有排列形式
2020/02/26 Python
Numpy中np.random.rand()和np.random.randn() 用法和区别详解
2020/10/23 Python
英国和爱尔兰最大的地毯零售商:Kukoon
2018/12/17 全球购物
如何在.net Winform里面显示PDF文档
2012/09/11 面试题
成品仓管员岗位职责
2013/12/11 职场文书
文明青少年标兵事迹材料
2014/01/28 职场文书
浅谈mysql返回Boolean类型的几种情况
2021/06/04 MySQL
win10蓝屏0xc0000001安全模式进不了怎么办?win10出现0xc0000001的解决方法
2022/08/05 数码科技