从python2到python3,这两个版本可以说是从语法、编码等多个方面上都有很大的差别。为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下相容,也就是说许多针对早期Python2版本设计的程式都无法在Python 3上正常执行。而且现在,python中的大多数第三方库都正在努力地修改以相容Python 3.0版本。

  我之前初次安装的就是python3.6.2版本,不过在cocos开发时要运行build_native.py等文件,这些文件的语法都是python2版本的语法,由于python2和3的差异,导致编译失败。因此,又在电脑上安装了python2.7.12,这时就出现了python调用版本切换的问题。

  环境变量一直以来都是一件令人头疼的事,无论是从路径设置、软件调用选择和延时生效的方面来看,虽然不算难,但是有些时候特别烦人。

  我的python2放置的路径:C:\Python27

  我的python3放置的路径:F:\python

  因为是在学习过程中安装的,就没有注意特别规范化的命名,下面记录的配置过程则是以这两个路径为基础:

1、进入环境变量配置页面:

  控制面板-》系统和安全-》系统-》高级系统设置

  

  

  

  

  点击环境变量:

  

2、配置环境变量:

  在用户变量里添加两个变量:

  变量名:python

  值:F:\python

  变量名:python2

  值:C:\Python27

  

  python设置的时python3.6.2的路径,python2则是python2.7.12的路径(填入自己的电脑安装的python两个路径)。

  修改Path变量:

  

  添加8个路径:

  F:\python\Scripts\

  F:\python\

  C:\Python27\

  C:\Python27\Scripts\

  %python%\DLLs

  %python%\Lib\lib-tk

  %python2%\DLLs

  %python2%\Lib\lib-tk

  配置如下:

  

  接连三个确定,保存设置并推出环境变量配置界面。

3、验证是否能切换:

  进入cmd:

  

  分别输入python和python2,进入不同版本的python中:

  

  至此,配置两个版本的python切换已经完成。

4、特别注意:

  (1)、在配置环境变量时,如果使用%python%来引入外部的路径,比如%python%\DLLs这个路径,外部的python变量的F:\python结尾一定不要加\。

  原因:%python%是将python变量的值引入,如果结尾加了\,那么Path中的这个路径就会变成F:\python\\DLLs,出现斜杠重复,导致配置出错。

    (虽然这个错误点很基本,但是用到%代入时不易察觉和发现,我之前就是在这个地方绊了老半天。)

  (2)、pip默认是python2版本的第三方库安装,pip3则是python3版本的第三方库安装命令。

  差别:pip命令会默认把安装的第三方库放置在python2.7.12的路径下,pip3命令会默认放置在python3.6.2的路径下。

  后言:Python开发:部分第三方库无法在线安装解决方法

Python开发:Python2和Python3的共存和切换使用的更多相关文章

  1. linux服务器升级python版本(python2与python3共存)

    linux服务器升级python版本 ######################################## 第一步先安装sqlite-devel,因为python2也有这个,python3 ...

  2. Python - Python2与Python3合理共存Windows平台

    Install Python2 and Python3 Python 2.7.13 - Windows x86-64 MSI installer Python 3.6.0 - Windows x86- ...

  3. RobotFramework-RIDE环境搭建一:关于Python2和Python3的共存使用

    最近在搭建Robot Framework自动化测试框架,由于Robot Framework 框架是基于Pytho语言开发的,要想使用Robot Framework 首先需要有Python环境. RID ...

  4. 用启动器py成功解决python2和python3同时共存且同时运行的问题

    缘起:之前一直用PHP来开发微信公众号后台,最近正在学习python,而且看到微信官方也把公众号后台的示例代码换成了python的,但是示例中用的web.py需要用到python2,而我自己的电脑上装 ...

  5. python2 与 python3 实现共存

    已有配置  Anaconda2+python2.7 方案一:直接安装官网原生python3.6 1.修改根目录下python.exe ->python3.exe    pythonw.exe - ...

  6. Jupyter Notebook中让python2和python3内核共存

    自己计算机里面共存了Python2和Python3,ipython作为试探性的REPL解释器使用的频率还是挺高的,分别在2和3下安装完ipython notebook后怎么分别使用这两种内核呢 按照默 ...

  7. 解决 Python2 和 Python3 的共存问题

    首先安装两种版本的Python 进入系统属性更改环境变量 将两个版本的安装路径找出. 添加至PATH中,变量之间用分号隔开. D:\Python36\Scripts\;D:\Python36\;D:\ ...

  8. 电脑同时安装了python2和python3后,随意切换版本并使用pip安装

    第一步: python2安装路径下python.exe重命名为python2.exe,python3安装路径下python.exe重命名为python3.exe; 第二步: 分别为python2.ex ...

  9. python:python2与python3共存时,pip冲突,提示Fatal error in launcher: Unable to create process using '"d:\python27\python2.exe" "D:\Python27\Scripts\pip2.exe" '

    问题背景: 机器上同时装了python2.和python3后,导致只能用pip3了,使用pip2时提示:Fatal error in launcher: Unable to create proces ...

随机推荐

  1. pymysql和 SQLAlchemy在python下的使用

    #!/usr/bin/env python # -*- coding:utf-8 -*- from sqlalchemy import create_engine, Table, Column, In ...

  2. 在Mybatis-spring上基于注解的数据源实现方案

    一.遇到的痛点 最近在学习Spring-boot过程中,涉及到操作数据库.按照DOC引入mybatis-spring-boot-starter,然后按照套路配置application.properti ...

  3. objectid.go源码阅读

    )) } // func), ), ), ), ])<<])<<)]) } //获取])<<])<<])<<]), //转化为十进制的int ...

  4. bzoj2806 [Ctsc2012]Cheat

    我们的目的就是找到一个最大的L0,使得该串的90%可以被分成若干长度>L0的字典串中的子串. 明显可以二分答案,对于二分的每个mid 我们考虑dp:f[i]表示前i个字符,最多能匹配上多少个字符 ...

  5. BZOJ_1345_[Baltic2007]序列问题Sequence_单调栈

    BZOJ_1345_[Baltic2007]序列问题Sequence_单调栈 Description 对于一个给定的序列a1,…,an,我们对它进行一个操作reduce(i),该操作将数列中的元素ai ...

  6. BZOJ_3365_[Usaco2004 Feb]Distance Statistics 路程统计&&POJ_1741_Tree_点分治

    BZOJ_3365_[Usaco2004 Feb]Distance Statistics 路程统计&&POJ_1741_Tree_点分治 Description     在得知了自己农 ...

  7. Django中Middleware中间件

    Django中Middleware中间件 1 Middleware中间件概述 django中间middleware实质就是一个类,django会根据自己的规则在合适的时机执行中间件相应的方法.实际上当 ...

  8. ionic3 懒加载在微信上缓存的问题

    1.懒加载是什么? 在ionic2中所有的组件.模块.服务.管道等都堆积在app.module.ts模块中,在页面初始化的时候会一次性加载所有的资源,导致资源过大,页面渲染缓慢,也导致app.modu ...

  9. golang 中 string 转换 []byte 的一道笔试题

    背景 去面试的时候遇到一道和 string 相关的题目,记录一下用到的知识点.题目如下: s:="123" ps:=&s b:=[]byte(s) pb:=&b s ...

  10. 我和Python的Py交易》》》》》》 浮点数的身世字谜

    什么是浮点数? 在数据类型中写道,浮点数是带小数点的小数,这个概念是不准确的:浮点数是除了无限不循环小数之外的小数,也就是可以用分数表示的带小数点的数. 好了,浮点数就这些内容,讲完了,各回各家,各找 ...