在同一台电脑上同时安装Python2和Python3

目前Python的两个版本Python2和Python3同时存在,且这两个版本同时在更新与维护。

到底是选择Python2还是选择Python3,取决于当前要使用的库、框架支持哪个版本。

例如:HTMLTestRunner、locustio支持Python2,但是不支持Python3。

所以很多时候,一台电脑上需要同时安装Python2和Python3。

本篇内容主要讲一下,在同一台电脑上如何同时安装Python2和Python3,且均可以正常使用pip。

一、安装Python2(以及pip)

1.1、到Python的官网 https://www.python.org/ 下载Python的安装文件,

对于Windows用户来说,如果是32位系统,则选择x86版本;如果是64位系统,则选择64版本的安装文件。

我自己的电脑是64位,下面的例子按照64位进行说明。

下载的安装文件的名字类似于这个样子:python-2.7.12.amd64.exe

1.2、点击“”python-2.7.12.amd64“”这个安装文件,一直点击next即可,在选择安装路径时需要特别注意:Python的安装路径不能有空格!

为了区分是Python2还是Python3,把该目录下的python.exe文件重命名为python2.exe,如下面截图所示:

1.3、添加Python2的环境变量

此电脑--属性--高级系统设置--高级--环境变量--系统变量--Path--编辑

在此处添加   ;E:\setup\Python27\Scripts\;E:\setup\Python27\;   (此处根据自己的安装路径来写,且注意用英文分号和别的变量值隔开;

若不配置该变量,在cmd中输入Python2时会提示“不是内部命令”)

1.4、在cmd里,输入Python2,若出现下图中的提示,则表明Python2安装成功

1.5、安装setuptools。

在步骤1.6中要安装的pip,依赖于setuptools,所以需要先安装setuptools,再安装pip。

到官网 https://pypi.python.org/pypi/setuptools 下载,名字类似于这个样子“”setuptools-28.7.0.zip“”(下载时间不一样,版本号可能会不一样),进行解压;

在cmd中进入到解压后的目录(既setup.py文件存在的目录),执行>python2 setup.py install  (注:由于前面步骤1.2中将python.exe文件重命名为了python2.exe,                                                                                                                                    所以此处输入命令时一定要写python2,而不是python)

1.6、安装pip

pip是安装和管理python包的工具,通过pip来安装python包变的十分简单。

到官网 https://pypi.python.org/pypi/pip ,下载pip的压缩文件,下载后名字类似于这个样子“”pip-8.1.2.tar“”(下载时间不一样,版本号可能会不一样),进行解压;

在cmd中进入到解压后的目录(既setup.py文件存在的目录),执行>python2 setup.py install (注:此处执行的命令为啥是pytho2,而不是python,原因同1.5一样)

此时我们看一下Python2的pip的安装目录E:\setup\Python27\Scripts,看下面截图中,有pip、pip2.7、pip2,说明此时在cmd中执行pip或是pip2.7或是pip2,执行的都        是Python2的pip。

1.7、在cmd里输入pip2或是pip2.7,若出现以下截图中的内容,说明pip安装成功

二、安装Python3(由于Python3自带pip,所以无需另外安装pip)

2.1、到Python的官网 https://www.python.org/ 下载Python3的安装文件,

对于Windows用户来说,如果是32位系统,则选择x86版本;如果是64位系统,则选择64版本的安装文件。

我自己的电脑是64位,下面的例子按照64位进行说明。

下载的安装文件的名字类似于这个样子:python-3.5.0-amd64.exe

2.2、点击“”python-3.5.0-amd64.exe“”这个安装文件,一直点击next即可,在选择安装路径时需要特别注意:Python的安装路径不能有空格!

2.3、检查Python3的环境变量是否添加

Python3在安装时可以选择自动添加环境变量,但是有时候却无法自动添加,所以此时自己确认一下。

此电脑--属性--高级系统设置--高级--环境变量--系统变量--Path

若没有有关Python3的环境变量,在此处添加   ;E:\setup\Python35\Scripts\;E:\setup\Python35\;   (此处根据自己的实际安装路径来写)

2.4、检查python3是否安装成功,在cmd中输入python,若显示如下图所示,是有关python3的版本,则说明python3安装成功。

你可能有疑问:为什么这里不输入python3?  答:因为没有修改E:\setup\Python35目录下python.exe文件的名字为python3.exe。Python2里做了修改,所以这                                                                                 里修改不修改都无所谓,只要是能与E:\setup\Python27目录下的python.exe文件不重名即可。

2.5、验证Python3里pip是否自动安装成功

在cmd里输入pip3或是pip3.5(此时输入pip看不出是Python2还是Python3中的pip),若有截图中的显示则表明Python3中pip自动安装成功。

此时你可能有疑问,你怎么知道是输入pip3或是pip3.5,而不是pip3.6?因为在E:\setup\Python35\Scripts目录下pip.exe文件的名字决定的:如下图所示:

以上一和二将python2和python3 以及各自的pip安装完成。

三、具体使用

若是在Python2中使用pip操作时,用pip2或是pip2.7相关命令。

例:给Python2安装selenium,在cmd中输入 pip2 install selenium 或是 pip2.7 install selenium

若是在Python3中使用pip操作时,用pip3或是pip3.5相关命令。

例:给Python3安装selenium,在cmd中输入 pip3 install selenium 或是 pip3.5 install selenium

若有的包不支持pip的安装形式,将相应的文件下载解压后放入到某个目录下,用cmd进入到解压后的目录

若是给Python2安装该包,则执行python2 setup.py install

若是给Python3安装该包,则执行python setup.py install

四、下载模块

在下载过程中出现了这样的问题SyntaxError: invalid syntax ,参考了这位得解决办法,成功解决

就是在出现这个提示后,直接输入exit()先退出一下,直接安装即可

、使用清华镜像下载,原文链接

官方地址

首先,如果只是临时下载一个包
那么可以使用

 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 要下的包名

如果是永久修改镜像源

 pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

如果网络不好则使用这个

 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
``

亲测速度杠杠得

六、更新pip

提醒我要更新,给了命令,但是直接使用命令,并没有更新成功

然后我就用清华镜像更新,可以了

看一下版本

安装python3.8和python2.7的更多相关文章

  1. 7-linux-Centos7安装python3并与python2共存

    转载自:https://www.cnblogs.com/JahanGu/p/7452527.html linux-Centos7安装python3并与python2共存   1.查看是否已经安装Pyt ...

  2. linux上安装python3同时保留python2

    linux上安装python3同时保留python2?这个就要用到上篇说到的path变量了. 具体介绍及操作 这里我下载python3.6版本来进行介绍 django默认数据库为sqlite3,所以安 ...

  3. CentOS7下安装Python3并保留Python2

    1. 安装make编译指令的依赖环境 # yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel ...

  4. linux-Centos7安装python3并与python2共存

    1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5. 使用 python -V 命令查看一下是否安 ...

  5. Centos7安装python3并与python2共存

    1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5. 使用 python -V 命令查看一下是否安 ...

  6. 最新Centos7安装python3并与python2共存

    1.查看是否已经安装Python CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5. 使用 python -V 命令查看一下是否安 ...

  7. ubuntu安装Python3并与Python2自由切换

    一.配置ssh链接安装openssh-server sudo apt-get install openssh-server 二.安装Python3及pip sudo apt-get install p ...

  8. 一条命令在Centos7中换163 yum源、安装python3并与python2共存、使用豆瓣pip源加速

    打开一个Terminal: 换yum源: mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup & ...

  9. linux安装python3.*,更换Python2.*

    下载并解压:Python-3.5.7.tgz [root@AH-aQYWTYSJZX01 python3]# ll total 20268 -rw-r----- 1 temp01 temp01 207 ...

随机推荐

  1. DIV常用属性大全

    目录 一.属性列表 二.常用属性 三.一些特殊效果 四.定位和控制 一.属性列表 color : #999999 文字颜色 font-family : 宋体 文字字型 font-size : 10pt ...

  2. 机器学习 - 命名实体识别之Hidden Markov Modelling

    概述 命名实体识别在NLP的应用中也是非常广泛的,尤其是是information extraction的领域.Named Entity Recognition(NER) 的应用中,最常用的一种算法模型 ...

  3. 补充《解析“60k”大佬的19道C#面试题(上)》

    [广州.NET技术俱乐部]微信群的周杰写了一篇文章<解析“60k”大佬的19道C#面试题(上)>https://www.cnblogs.com/sdflysha/p/20200325-19 ...

  4. HTTP、TCP、IP协议面试题

    HTTP.TCP.IP协议基本定义 HTTP: (HyperText Transport Protocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2 ...

  5. 基于KNN的发票识别

    项目概况: 有一个PDF文件,里面的每页都是一张发票,把每页的发票单独存为一个PDF并用该发票的的发票号码进行文件的命名,发票号码需要OCR识别,即识别下图中红色方块的内容. 一:拆分PDF 现有一个 ...

  6. python之装饰器的进阶

    一.带参数的装饰器 (必须会) 针对不同的app的验证,比如:天猫和天猫超市,京东商城和京东超市 def wrapper_out(n): print(n) def wrapper(f): def in ...

  7. poj - 2096 概率dp (找bug)

    题意:一个人一天只能找1个bug ,这个bug属于s个子系统中的某一个子系统,属于n种bug 中的某一种 ,求 这个人找出n种bug ,并且s个系统都bug的期望 (每个系统的一定可以找出bug) 一 ...

  8. flask中温柔显示404等错误

    写下下面两个视图函数,然后在模板中写下错误时展现的内容,当然模板名,函数名是可以改的哟@app.errorhandler(404)def page_not_found(error): return r ...

  9. 一文彻底读懂MySQL事务的四大隔离级别

    前言 之前分析一个死锁问题,发现自己对数据库隔离级别理解还不够清楚,所以趁着这几天假期,整理一下MySQL事务的四大隔离级别相关知识,希望对大家有帮助~ 事务 什么是事务? 事务,由一个有限的数据库操 ...

  10. [讲解]prim算法<最小生成树>

    最小生成树的方法一般比较常用的就是kruskal和prim算法 一个是按边从小到大加,一个是按点从小到大加,两个方法都是比较常用的,都不是很难... kruskal算法在本文里我就不讲了,本文的重点是 ...