virtualenv对python
使用virtualenv对python进行多版本隔离
最近在用python做一个文本的情感分析的项目,用到tensorflow,需要用python3的版本,之前因为《机器学习实战》那本书的缘故,用的是python2.7.所以目前的情况是要两个版本共存,之前看到身边有人为了解决这个问题,居然装了两款软件,pycharm用来做python2.7的开发,另一款用来做python3.6的开发,估计一定是不知道python的虚拟环境工具virtualenv.本文就来讲述一下这个工具是怎么用的,同时也讲一下,如何在pycharm中使用virtualenv.
1. virtualenv的安装
virtualenv的安装和其它python上的软件安装一样,有两种方法,pip 和setup方法安装。
值得注意的是,我们说virutalenv的安装是为了解决多版本python共存的问题,暗含了,你的至少有一个python版本是已经存在,并且可以正常工作的。
我这里的主环境是python2.7
1.1 pip安装virtualenv
pip install virtualenv
当然了,卸载就是:pip uninstall virtualenv.
如果pip没有安装的话,可以看下面的第二种安装virtualenv的方法,顺带将pip也安装了。
1.2 源码安装virtualenv
在virtualenv的官网下载最新的tar.gz包:https://pypi.python.org/pypi/virtualenv/15.1.0#downloads
将tar.gz包解压后,目录切换到virutualenv的目录下,然后在执行一下命令:
c:\virtualenv-15.1.0>python setup.py install
如果pip没有安装,就按照上面方法,下载最新pip的tar.gz包安装即可。
2. 用virtualenv配置python虚拟环境
说到用virtualenv配置python的虚拟环境,其实就是将某个特定项目(或者说目录下)配置成某个python版本。
如下:
现在要将c:\PythonProj\sjtu-cs 这个项目(我认为说成目录更准确些)配置成python3.6的版本,因为这个目录下全部是python3.5的东西,用python2.7去运行显然是有问题的。也就是说要用virtualenv去创建python3.6.1的虚拟环境。值得一提的是,虚拟什么版本的python,一定是这个python提前已经装好了。
首先:准备对哪个目录进行虚拟,就先进入到这个目录下(这里是c:\PythonProj\sjtu-cs ),然后运行命令:
virtualenv -p c:\Python36\python.exe HigEnv
说明: -p就是python的版本(需要带上路径,这是因为在我们的环境变量里只有python2.7) HigEnv就是虚拟的环境变量。
如果不知道virtual,可以执行下面的命令进行查看:
上面都解释的很清楚,这里不再赘述。
我们看一下现在我们配置的是否生效了:
显然没有生效,因为需要激活。
3. 激活虚拟环境变量
c:\PythonProj\sjtu-cs>cd HigEnv/Scripts c:\PythonProj\sjtu-cs\HigEnv\Scripts>activate
验证一下:
>>> python "hello ,world"
python3和python2最明显的一个区别就是print由打印语句变成函数了。
退出激活环境用下面的命令:
(HigEnv) c:\PythonProj\sjtu-cs\HigEnv\Scripts>deactivate
值得注意的是,退出终端,重新进来的时候,如果没有激活,我们配置的虚拟环境是不会生效的,linux就不一样了,一直生效,不用每次都激活,目前还在研究中。
4. 在pycharm中使用virtualenv
pycharm开发工具是我目前见过最好的python开发工具,非常强大,本身已经集成了virtualenv工具,所以我们如果用它做开发,根本无需手工安装virtualenv,
不过话又说回来,在windows下的virtualenv使用方法和linux大同小异,会了windows,linux一通百通。
4.1 新建项目,自由选择python版本
当导入已有项目时,pychar会自动选择相匹配的python版本,当然你也可以选,方法在后面。另外python2和python3分别向下兼容,你不会除了这两个版本还有其余版本吧。
4.2. 在pycharm中创建virtualenv的虚拟环境:
当然了,你也可以不用创建环境变量,直接选择你需要的就可以了:
打开你需要选择python版本的项目,然后直接选择需要的project interpreter.
OK!
virtualenv对python的更多相关文章
- Virtualenv: 一个Python环境管理工具(windown版本)
1.安装virtualenv 在安装virtualenv之前,我们需要安装至少有一个版本的python:因为virtualenv是python的一个第三方模块,必须基于python环境才能安装: 如果 ...
- linux下virtualenv的python版本
virtualenv是python开发中一个重要的工具,它可以帮助我们创建一个干净的python解释环境,创建虚拟环境时,这个虚拟环境的 python版本往往是系统默认的2.x版本.别急,我们只需要一 ...
- 使用virtualenv隔离python环境
使用virtualenv隔离python环境 | 爱积累爱分享 使用virtualenv隔离python环境 iitshare 分类:Python | 标签:pythonenv, virtualenv ...
- windows环境下使用virtualenv对python进行多版本隔离
最近在用python做一个文本的情感分析的项目,用到tensorflow,需要用python3的版本,之前因为<机器学习实战>那本书的缘故,用的是python2.7.所以目前的情况是要两个 ...
- Ubuntu下基于Virtualenv构建Python开发环境
1.安装virtualenv并建立虚拟环境 1).更新pip版本 sudo pip install --upgrade pip 如果出现如下异常: File , in <module> f ...
- [转]windows环境下使用virtualenv对python进行多版本隔离
windows环境下使用virtualenv对python进行多版本隔离 最近在用python做一个文本的情感分析的项目,用到tensorflow,需要用python3的版本,之前因为<机器学习 ...
- centos 6.5使用virtualenv指定python 2.7.x
1. 使用现有的 python 2.6.x 安装pip rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8. ...
- windows下使用virtualenv对python进行多版本隔离开发
1.windows下安装virtualenv pip install virtualenv 2.进入项目目录,创建虚拟环境,例如: virtualenv venv (默认python版本) virtu ...
- Sublime Text3 以及 SublimeREPL使用Virtualenv执行python
1. SublimeText3 安装Virtualenv插件(Crtl+Shift+P) 2. 新建python虚拟环境: Crtl+Shift+P,选中Virtualenv:New选项,在底部Vir ...
随机推荐
- Django的命令
安装django : pip install django 创建django项目 :django-admin startproject projectname 启动django项 ...
- request.getRemoteUser() Spring Security做权限控制后
一. request.getRemoteUser();//获取当前缓存的用户,比如Spring Security做权限控制后就会将用户登录名缓存到这里 request.getRemoteAddr(); ...
- Scala具体解释---------数组、元组、映射
一.数组 1.定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度) 提供数组初始值的数组,无需newkeyword Scala声明数组时.须要带 ...
- Dynamics CRM 2016 Web API 消息列表
Function Name Description CalculateTotalTimeIncident Function Calculates the total time, in minutes, ...
- Android中Application类的详解:
Android中Application类的详解: 我们在平时的开发中,有时候可能会须要一些全局数据.来让应用中的全部Activity和View都能訪问到.大家在遇到这样的情况时,可能首先会想到自定义一 ...
- oracle-function 练习
/* *scm_iss.test_imti_fun2 *带有输入參数的Function */ CREATE OR REPLACE FUNCTION TEST_IMTI_FUN2(P_NO IN NUM ...
- 关于python的二维数组
test =[ [1, 2, 3], [4, 5, 6], [7, 8, 9]] #这个就可以看做是二维数组了,直接创建print(test)print(test[:][1]) ...
- (转)iptables详细教程:基础、架构、清空规则、追加规则、应用实例
转自:http://lesca.me/archives/iptables-tutorial-structures-configuratios-examples.html iptables防火墙可以用于 ...
- 鲁德http://www.testroad.org/topic/76
[最新的招聘信息]:1.联动优势科技有限公司招聘性能测试工程师 薪资20K左右 http://ask.testroad.org/article/4042.上海-交通银行总行-性能测试专家 ...
- C++ tab键实现自动补全输入功能
一.简介 由于项目中写了个测试的控制台程序,是每次读取一行,即通过getline()来实现的,所以每次必须输入全路径名称,才能实现运行. 大家都觉得麻烦,就写了个tab键自动选择补全的. 目前基本可实 ...