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 相关文章推荐
pyqt和pyside开发图形化界面
Jan 22 Python
Python中input和raw_input的一点区别
Oct 21 Python
python paramiko模块学习分享
Aug 23 Python
Python之列表的插入&替换修改方法
Jun 28 Python
pandas读取CSV文件时查看修改各列的数据类型格式
Jul 07 Python
使用python批量修改文件名的方法(视频合并时)
Mar 24 Python
浅析PyTorch中nn.Module的使用
Aug 18 Python
10个Python面试常问的问题(小结)
Nov 20 Python
使用jupyter notebook直接打开.md格式的文件
Apr 10 Python
python3发送request请求及查看返回结果实例
Apr 30 Python
Python爬虫如何应对Cloudflare邮箱加密
Jun 24 Python
python实现自定义日志的具体方法
May 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+JS无限级可伸缩菜单详解(简单易懂)
2007/01/02 PHP
sqlyog 中文乱码问题的设置方法
2008/10/19 PHP
php入门学习知识点一 PHP与MYSql连接与查询
2011/07/14 PHP
php while循环得到循环次数
2013/10/26 PHP
教你在PHPStorm中配置Xdebug
2015/07/27 PHP
php从身份证获取性别和出生年月
2017/02/09 PHP
Laravel框架文件上传功能实现方法示例
2019/04/16 PHP
JS中==与===操作符的比较
2009/03/21 Javascript
jQuery-ui引入后Vs2008的无智能提示问题解决方法
2014/02/10 Javascript
10分钟学会写Jquery插件实例教程
2014/09/06 Javascript
两行代码轻松搞定JavaScript日期验证
2016/08/03 Javascript
NodeJs的优势和适合开发的程序
2016/08/14 NodeJs
如何利用模板将HTML从JavaScript中抽离
2016/10/08 Javascript
解析如何利用iframe标签以及js制作时钟
2016/12/08 Javascript
vue2.0实现导航菜单切换效果
2017/05/08 Javascript
解决JS内存泄露之js对象和dom对象互相引用问题
2017/06/25 Javascript
JS正则表达式完美实现身份证校验功能
2017/10/18 Javascript
JavaScript实现快速排序的方法分析
2018/01/10 Javascript
微信小程序调用天气接口并且渲染在页面过程详解
2019/06/24 Javascript
微信小程序把百度地图坐标转换成腾讯地图坐标过程详解
2019/07/10 Javascript
JavaScript剩余操作符Rest Operator详解
2019/07/20 Javascript
layui导出所有数据的例子
2019/09/10 Javascript
如何搭建一个完整的Vue3.0+ts的项目步骤
2020/10/18 Javascript
探索node之事件循环的实现
2020/10/30 Javascript
python脚本实现查找webshell的方法
2014/07/31 Python
python记录程序运行时间的三种方法
2017/07/14 Python
pandas每次多Sheet写入文件的方法
2018/12/10 Python
10款最好的Python开发编辑器
2019/07/03 Python
python elasticsearch环境搭建详解
2019/09/02 Python
python实现简易学生信息管理系统
2020/04/05 Python
python 逆向爬虫正确调用 JAR 加密逻辑
2021/01/12 Python
使用OpenCV实现人脸图像卡通化的示例代码
2021/01/15 Python
总裁岗位职责
2013/12/04 职场文书
八一建军节部队活动方案
2014/02/04 职场文书
最美劳动诗,致敬所有的劳动者!
2019/07/12 职场文书
创业计划书之甜品店
2019/09/18 职场文书