教你们如何切换Python2与Python3 草稿箱

异步季风
• 阅读 1261

当同时安装Python2和Python3后,如何兼容并切换使用详解(比如pip使用)

 

由于历史原因,Python有两个大的版本分支,Python2和Python3,又由于一些库只支持某个版本分支,所以需要在电脑上同时安装Python2和Python3,因此如何让两个版本的Python兼容,如何让脚本在对应的Python版本上运行,这个是值得总结的。

对于Ubuntu 16.04 LTS版本来说,Python2(2.7.12)和Python3(3.5.2)默认同时安装,默认的python版本是2.7.12。

 教你们如何切换Python2与Python3 草稿箱
当然你也可以用python2来调用。

 教你们如何切换Python2与Python3 草稿箱

如果想调用python3,就用python3.

 教你们如何切换Python2与Python3 草稿箱

 

对于Windows,就有点复杂了。因为不论python2还是python3,python可执行文件都叫python.exe,在cmd下输入python得到的版本号取决于环境变量里哪个版本的python路径更靠前,毕竟windows是按照顺序查找的。比如环境变量里的顺序是这样的:

 教你们如何切换Python2与Python3 草稿箱

那么cmd下的python版本就是2.7.12。

 教你们如何切换Python2与Python3 草稿箱

反之,则是python3的版本号。

 

这就带来一个问题了,如果你想用python2运行一个脚本,一会你又想用python3运行另一个脚本,你怎么做?来回改环境变量显然很麻烦。

网上很多办法比较简单粗暴,把两个python.exe改名啊,一个改成python2.exe,一个改成python3.exe。这样做固然可以,但修改可执行文件的方式,毕竟不是很好的方法。

我仔细查找了一些python技术文档,发现另外一个我觉得比较好的解决办法。

借用py的一个参数来调用不同版本的Python。py -2调用python2,py -3调用的是python3.

 教你们如何切换Python2与Python3 草稿箱

 教你们如何切换Python2与Python3 草稿箱
当python脚本需要python2运行时,只需在脚本前加上,然后运行py xxx.py即可。

#! python2

当python脚本需要python3运行时,只需在脚本前加上,,然后运行py xxx.py即可。

#! python3

就这么简单。

同时,这也完美解决了在pip在python2和python3共存的环境下报错,提示Fatal error in launcher: Unable to create process using ‘”’的问题。

当需要python2的pip时,只需

py -2 -m pip install xxx

当需要python3的pip时,只需

py -3 -m pip install xxx

python2和python3的pip package就这样可以完美分开了。

点赞
收藏
评论区
推荐文章
菜鸟阿都 菜鸟阿都
4年前
将python文件打包成exe可运行文件
目前有好几种方法可以将python文件打包成exe应用程序文件,例如py2exe,pyinstaller等,比较下来,还是觉得pyinstaller使用起来比较简单。  首先第一步下载安装pyinstaller, 如果已经安装过python3的用户比较方便,可以使用python3文件下的Scripts文件中的pip安装,python2好像没有,使用pip
浅梦一笑 浅梦一笑
4年前
小白看过来,今天带你了解python2和python3的区别
看到这个题目大家可能猜到了我接下来要讲些什么,呵呵,对了,那就是列出这两个不同版本间的却别!搜索一下大家就会知道,python有两个主要的版本,python2和python3,但是python又不同于其他语言,向下兼容,python3是不向下兼容的,但是绝大多数组件和扩展都是基于python2的,下面就来总结一下python2和python3的区别。
学python的猫 学python的猫
4年前
python的学习难?你的方法不对罢了,看看我的。
1、选择Python版本对于使用python的人来说,python的版本就是我们的工作环境,因此,在学习之前需要考虑好学习哪个版本,python2和python3的版本不同,会存在一些差异,虽说不大,但直接学习python3的话相对来说会好一点,而且跑一趟还能3相对来说对零基础的小白来说更加的友好,容易上手。2、学习Python基础知识Python是一个
CuterCorley CuterCorley
4年前
CentOS 快速安装Python3和pip3
CentOS是经常使用的Linux系统之一,特别是作为服务器使用,其只自带了Python2,但是现在使用更广泛的是Python3,因此需要自行安装,同时为了更方便地安装第三方库,还需要安装pip3。一、安装相关依赖1.安装环境依赖:bashyumyinstallzlibdevelbzip2developenssldevelnc
初学者学习python2还是python3?
如果你是一个初学者,或者你以前接触过其他的编程语言,你可能不知道,在开始学习python的时候都会遇到一个比较让人很头疼的问题:版本问题!!是学习python2还是学习python3?这是非常让人纠结的!搜索一下便会发现python3和python2是不兼容的,而且差异比较大,到底学习哪个版本呢?下面就来为大家分析一下:当初设计Python3
Stella981 Stella981
3年前
Linux下Python编程
linux下python编程可以使用sublimetext3来作为编辑器,很方便,而且linux默认就是有python2和python3环境安装的,我们只要安装sublimetext3即可进行python编程sudoupdatealternativesinstall/usr/bin/pythonpython/usr/bin/p
Stella981 Stella981
3年前
Scapy 从入门到放弃
0x00前言最近闲的没事,抽空了解下地表最强的嗅探和收发包的工具:scapy。scapy是一个python模块,使用简单,并且能灵活地构造各种数据包,是进行网络安全审计的好帮手。0x01安装因为2020年python官方便不再支持python2,所以使用python3安装。!(https://oscimg.oschina.net/os
Stella981 Stella981
3年前
Pipenv创建和管理虚拟环境报的错
1、pipinstallpipenv安装Pipev时报错是因为我安装有python2和python3两个,选择如下的解决方式:1.python2mpipinstallxxx或者2.python3mpipinstallxxx2、pipenvinstall时出现如下错误:call
Wesley13 Wesley13
3年前
Mysql(九):Python连接MySQL数据库之pymysql模块使用
Python3连接MySQL本文介绍Python3连接MySQL的第三方库PyMySQL的基本使用。PyMySQL介绍PyMySQL是在Python3.x版本中用于连接MySQL服务器的一个库,Python2中则使用mysqldb。Django中也可以使用PyMySQL连接MyS
Stella981 Stella981
3年前
Python3的简介
Python3简介Python3与Python2之间是不兼容的,而且其中的差异性比较大。其实Python是linux上最常用的软件之一,但是linux目前的版本大部分还是使用Python2的,而且,在linux上依赖Python2的程序更多一些,所以Python3要代替Python2成为主流还需要几年的时间。我建议:
Stella981 Stella981
3年前
Python3与Python2的差异
基于python3浅谈python3与python2的差异。由于现今主流Python3,但是之前用Python2做的项目,还得维护,所以作为python工作者,不免要了解其中差异,其中,Python2有ASCIIstr()类型,unicode()是单独的,不是byte类型。而Python3.X源码文件默认使用utf8编码,以及一个