在windows下面使用多版本Python安装相应的虚拟开发环境

 

在搭建一个项目的时候,希望使用最新版的Python3.7版本,但是Python3.6的版本也要留下,那么问题来了,如何解决这个问题呢?如何在windows下面使用多版本Python安装指定版本的虚拟环境呢?这篇文章我就来解决这个问题。

多版本Python使用

Python官网,下载自己想要的版本,我这里不演示Python的安装过程,但要说明的是你在安装的时候不要勾选那个Add pyhton to Path(当然如果你勾选了也没关系,前提是你要记得自己Python安装在哪个环境下面了)。我以自己安装了Python3.6.4和Python3.7.0这两个版本为例,开始介绍。

其中,我Python3.6的安装路径为:F:\Python\pystall,Python3.7的安装路径为:F:\Python3.7\python37。现在我在命令行输入Python出现的是:python3.6的版本:

打开系统变量的配置,点击path,发现我配置的路径是F:\Python\pystall,所以直接输入Python就是Python3.6的版本:

现在我们在刚才的系统变量的path里面增加Python3.7的安装路径:F:\Python3.7\python37,记得要把它放到之前环境的上面,因为系统查找Python环境是从上往下的:

然后退出dos命令,我们重新打开一下,在里面输入Python出现的是:python3.7的版本:

所以我们就完成了Python多版本的安装与使用,也就是说需要用到哪个版本的python就把它添加到系统的环境变量里面去。这里我删除了Python3.7的环境配置,只保留Python3.6的环境。

指定版本的虚拟环境的搭建

安装virtualenv

关于virtualenv的安装,我讲过很多次,这里就不再说明了,你可以点击这里:零基础使用Django2.0.1打造在线教育网站(二):开发环境配置按照要求进行安装,我是安装在了f:\python\pystall\lib\site-packages下面。我们先查看一下它的版本:

F:\Envs>virtualenv --version
15.2.0

安装Python3.6的虚拟环境

接下来我们就开始创建虚拟环境:我们先在F盘下面创建一个名为Envs的目录(实际上我已经创建好了),然后cd到这个目录,开始新建一个名为ttttest的虚拟环境:

F:\Envs>virtualenv ttttest
Using base prefix 'f:\\python\\pystall'
New python executable in F:\Envs\ttttest\Scripts\python.exe
Installing setuptools, pip, wheel...done. F:\Envs>cd ttttest F:\Envs\ttttest>cd scripts F:\Envs\ttttest\Scripts>python
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

然后cd到scripts目录,因为Python.exe就在这个目录里面,然后我们输入python,发现是python3.6,因为我前面说过了,我只保留了Python3.6的环境,你可以打开scripts这个目录,看到没有:

进入与退出虚拟环境的命令是activate.batdeactivate.bat

安装Python3.7的虚拟环境

和之前一样,我们还是在Envs这个目录下面,新建一个ttttest7的虚拟环境:


F:\Envs>virtualenv -p F:\Python3.7\python37\python.exe ttttest7
Running virtualenv with interpreter F:\Python3.7\python37\python.exe
Using base prefix 'F:\\Python3.7\\python37'
New python executable in F:\Envs\ttttest7\Scripts\python.exe
Installing setuptools, pip, wheel...done. F:\Envs>cd ttttest7 F:\Envs\ttttest7>cd scripts F:\Envs\ttttest7\Scripts>activate.bat (ttttest7) F:\Envs\ttttest7\Scripts>python
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:06:47) [MSC v.1914 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

看到没有,我们在后面指定了虚拟环境的Python版本,然后进入虚拟环境,运行Python发现就是Python3.7了,你可以打开这个目录下面的scripts:

所以看到这里你明白了了,用哪个虚拟环境就指定哪个Python环境。但是用virtualenv非常不方便,所以推荐使用virtualenvwrapper来进行虚拟环境的管理。

virtualenvwrapper的安装

这个virtualenvwrapper的安装非常简单,我们使用下面的命令安装即可:

F:\Envs>pip install virtualenvwrapper-win
Requirement already satisfied: virtualenvwrapper-win in f:\python\pystall\lib\site-packages (1.2.5)
Requirement already satisfied: virtualenv in f:\python\pystall\lib\site-packages (from virtualenvwrapper-win) (15.2.0)

因为我已经安装了,所以就是这个样子。然后可以使用workon命令查看当前已经存在的虚拟环境。如果我们需要新建虚拟环境可以使用mkvirtualenv xxx命令,这里建了一个testtt的虚拟环境:

F:\Envs>mkvirtualenv testtt
Using base prefix 'f:\\python\\pystall'
New python executable in C:\Users\lenovo\Envs\testtt\Scripts\python.exe
Installing setuptools, pip, wheel...done. (testtt) F:\Envs>

不知道你发现没有,我们前面采用virtualenv命令所创建的虚拟环境是直接安装在你当前所在的目录的(你在哪个目录执行virtualenv命令,新建的虚拟环境就在那)。但是使用mkvirtualenv命令所创建的虚拟环境是在C:\Users\lenovo\Envs这个目录下面的,这是默认的安装路径,你可以自定义的。打开系统环境变量配置,我们新增WORKON_HOME然后路径就写F:Envs(自定义路径):

然后点击确定,现在我们重新打开一个dos,创建一个名为7ttttest的虚拟环境,我们看看它是不是安装在了F:Envs下面:

C:\Users\lenovo>mkvirtualenv 7ttttest
Using base prefix 'f:\\python\\pystall'
New python executable in F:\Envs\7ttttest\Scripts\python.exe
Installing setuptools, pip, wheel...done. (7ttttest) C:\Users\lenovo>

然后找到F:Envs,发现确实在这里:

这样我们就完成了虚拟环境安装的自定义。

虚拟环境指定Python版本的命令就是mkvirtualenv -p python路径 虚拟环境名称(注意这个-p是不可以去掉的)。举个例子来说,我们需要在F:Envs目录下面新建一个名为test的Python版本为3.7的虚拟环境。通过分析,我们的WORKON_HOME就是F:Envs,所以这个不需要修改。然后我的Python3.7的安装路径为:F:\Python3.7\python37,所以我们采用的命令就是:

mkvirtualenv -p F:\Python3.7\python37\python.exe test

至此我们本篇关于windows下面使用多版本Python安装指定版本的虚拟环境的介绍就到此为止了,感谢你的赏阅!

在windows下使用多版本Python安装相应的虚拟开发环境的更多相关文章

  1. windows下Bullet 2.82编译安装(Bullet Physics开发环境配置)

    平台:Win7,VS2010 1. Bullet库的组织 下图是Bullet_User_Manual中的截图: 从中可见,Bullet的LinearMath(线性数学模块),其上是BulletColl ...

  2. [z]Windows 下基于 Eclipse 的可视化远程 Linux C/C++ 开发环境搭建

    http://blog.csdn.net/lostaway/article/details/8086056 1.简介 Windows 下远程 Linux 开发工具,比较著名的就是 WinGDB 和 M ...

  3. OSX编译安装Python3及虚拟开发环境Virtualenv

    0X00.前言 因为工作原因,最近主要做Python开发,刚好电脑系统重装之后所有的东西都需要重新配置.此文主要记录OSX下通过源码编译安装Python3以及安装虚拟开发环境Virtualenv. 0 ...

  4. 在windows下用cygwin和eclipse搭建cocos2dx的android开发环境

    在windows下用cygwin和eclipse搭建cocos2dx(2.1.4)的android开发环境,2013-8-1更新. 一.准备工作 需要下载和安装以下内容,请根据自己的操作系统选择x86 ...

  5. Windows下搭建远程Linux主机的图形化本地开发环境

    在实际开发中,项目的类生产.生产环境一般都是选择Linux为服务器进行部署. 相应的,我们的开发最好也在Linux环境下进行,否则容易引发其他的问题,比如不同环境下功能不一致.库依赖差异等. 但是Li ...

  6. python笔记:配置虚拟开发环境

    问题 有的时候开发不同的业务,所需要的环境不一样.一直在同一个环境中开发时候,不同的包版本升级可能会导致另外的业务不能正常工作.另外,有的github上的项目需要的开发环境与你使用的环境不同,冒然的按 ...

  7. 使用Anaconda3配置多版本Python虚拟开发环境

    有时候,为了使用比较干净的开发环境,或者为了测试一些版本的扩展库,我们可能需要创建虚拟开发环境,在不同的虚拟开发环境中,只安装需要的扩展库,这样可以最大程度上减少不同扩展库之间的兼容性带来的冲突或其他 ...

  8. Windows下当地RabbitMQ服务的安装

    Windows下本地RabbitMQ服务的安装 本文参考:刘若泽相关技术文档 当然这些内容页可以通过RabbitMQ官方网站获得. RabbitMQ配置说明手册 一.RaibbitMQ服务器配置 1. ...

  9. windows下使用python2.7.6 安装django

    1) 安装python2.7.6 2) 由于 python2.7.6 中没有安装setuptools,需要先从官网下载setuptools,下载zip包然后解压,运行 python setup.py ...

随机推荐

  1. adb相关基础知识集锦

    Android单元测试adb shell am instrument -w adb shell dumpsys adb logcat介绍

  2. os.chmod()--更改目录授权权限

    用法:os.chmod() 方法用于更改文件或目录的权限. 语法:os.chmod(path, mode) 参数:只需要2个参数,一个是路径,一个是说明路径的模式. path -- 文件名路径或目录路 ...

  3. Android后台服务拍照

    原文:https://blog.csdn.net/wurensen/article/details/47024961 一.背景介绍最近在项目中遇到一个需求,实现一个后台拍照的功能.一开始在网上寻找解决 ...

  4. Angular.js浅谈

    至今博主对于MVVM框架比较了解的就只能算有Angular了,首先给大家明确一个概念,Angular1.x才能叫Angular.js,而Angular2.4.5都直接叫Angular了,因为从2开始已 ...

  5. TradingView学习记录

    官网:https://cn.tradingview.com   申请图表库 用本地服务器打开 二:文件目录 三:基础概念 3.1 UDF:通用数据饲料(Universal Data Feed)     ...

  6. 【1】ConcurrentModificationException 异常解析和快速失败,安全失败

    目录 一.引起异常的代码 二.foreach原理 三.从ArrayList源码找原因 四.单线程解决方案 五.在多线程环境下的解决方法 一.引起异常的代码 以下三种的遍历集合对象时候,执行集合的rem ...

  7. [整理]IIS 6.0 下部署 Asp.net MVC Web Api 后 HTTP PUT and DELETE 请求失败

    http://guodong.me/?p=1560 ASP.NET MVC 4 has a new feature called WebAPI which makes it much easier t ...

  8. java concurrent 中ExecutorService和CompletionService简单区别

    举个例子,现在需要执行10个任务,这些任务都是有返回值,并且需要使用10个线程同时执行.一般的做法就是创建ExecutorService线程池,pool大小10,每个任务实现Callable接口,然后 ...

  9. 20155319 2016-2017-2 《Java程序设计》第5周学习总结

    20155319 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 8 异常处理 - `try`和`catch`语法,如果被try{}的语句出现了catch() ...

  10. 面积并+扫描线 覆盖的面积 HDU - 1255

    题目链接:https://cn.vjudge.net/problem/HDU-1255 题目大意:中文题目 具体思路:和上一篇的博客思路差不多,上一个题求的是面积,然后我们这个地方求的是啊覆盖两次及两 ...