首页 > 编程知识 正文

包含2而不是python的词条

时间:2023-12-06 11:46:59 阅读:312594 作者:TURH

本文目录一览:

  • 1、python2和python的区别
  • 2、用python2还是python3
  • 3、ubuntu上怎么设置默认python命令是执行python3而不是python2
  • 4、python2和python有什么区别

python2和python的区别

1. print不再是语句,而是函数,比如原来是 print 'abc' 现在是 print('abc')

但是 python2.6+ 可以使用 from __future__ import print_function 来实现相同功能

2. 在Python 3中,没有旧式类,只有新式类,也就是说不用再像这样 class Foobar(object): pass 显式地子类化object

但是最好还是加上. 主要区别在于 old-style 是 classtype 类型而 new-style 是 type类型

3. 原来1/2(两个整数相除)结果是0,现在是0.5了

python 2.2+ 以上都可以使用 from __future__ import division 实现改特性, 同时注意 // 取代了之前的 / 运算

4. 新的字符串格式化方法format取代%

错误, 从 python2.6+ 开始已经在str和unicode中有该方法, 同时 python3依然支持 % 算符

5. xrange重命名为range

同时更改的还有一系列内置函数及方法, 都返回迭代器对象, 而不是列表或者 元组, 比如 filter, map, dict.items 等

6. !=取代     

python2 也很少有人用      所以不算什么修改

7. long重命名为int

不完全对, python3 彻底废弃了 long+int 双整数实现的方法, 统一为 int , 支持高精度整数运算.

8. except Exception, e变成except (Exception) as e

只有 python2.5 及以下版本不支持该语法. python2.6 是支持的. 不算新东西

9. exec变成函数

类似 print() 的变化, 之前是语句.

简单补充下

* 主要是类库的变化, 组织结构变了些. 但功能没变. urlparse -   urllib.parse 这样的变化

* 最核心的变化它没有说, 对 bytes 和 原生 UNICODE 字符串的支持, 删除了 unicode 对象, str 为原生 unicode 字符串, bytes 替代了之前的 str 这个是最核心的.

* 其它... 貌似不怎么重要了.

用python2还是python3

目前Python的版本有 Python 2 和 Python 3两个版本 。 那如果想学习Python,是选择学习 Python2 还是 Python 3呢?

白月黑羽认为首先你需要了解Python2 和Python3 的区别,然后才能根据你的情况作出正确的选择。

分析

目前Python2 用的最多的是Python2.7,由于历史原因,Python2可以说是使用的时间很长,应用最广泛的一个版本,举两个例子:

如果做底层开发,应该知道UDK、UEFI,UEFI的核心代码的编译工具和脚本都是基于Python2.7开发的

目前所有的Linux版本,包括Ubuntu、redhat、centos、FC等,系统默认工具和安装的Python版本为皆为2(大多数为Python2.7),大家可以在黑屏终端里面直接输入Python 查询

第一个可能只有业内人士知道,但是第二个,只要你从事软件开发的人,就会明白Python2.7的应用范围之广。

由于大量的第三方库和工具都是在Python2上开发的,而且,最早学习Python的人也都是从Python2开始学习了,产品也在Python2 上开发和维护,所以, Python组织还在维护 Python 2。造成了Python 2 和 Python 3 并存的状态, 而且在很长的一段时间将继续存在。但是,Python 组织 官方宣布,到 2020年,不再维护 Python 2 了

至于Python3,它是 Python 2的 升级版,语法和库有一些差异,但不兼容Python 2。从发展趋势上看,整个业界都在 往 Python 3 转,是大势所趋。

选择

那是学习 Python2 还是 Python 3呢?白月黑羽认为:

如果你是一个初学者,白月黑羽建议你可以 直接学习 Python 3,从这里开始和白月黑羽一起学习Python3吧!

如果你是一个Python2 的开发者,白月黑羽也建议先了解Python2和Python3的区别,以便把你的产品早日升级支持Python 3

Python3 目前使用比较广泛的是Python3.6,但最新的是Python3.7,我们的教程的参考版本也是Python3.6,至于是使用 python3.6 而不是 3.7。 具体原因,请参考选择 Python3.6 还是 Python 3.7

推荐学习《python教程》。

ubuntu上怎么设置默认python命令是执行python3而不是python2

首先看你的PATH变量,把python3所在的目录放到前面,然后看看用which命令查看python指向那个文件,一般是软链接,看它指向的是python2还是python3,如果没有指向python3的,新建一个

python2和python有什么区别

很多初学者刚开始学python的时候,一定都遇到过这个问题,python的世界有2个版本,python2 和 python3 ,而且有些语法还不兼容.怎么办~~到底应该选择哪个版本来开发呢?好,今天我们就来聊聊这个话题.

1.Python2和Python3的历史背景

Python语言是在20世纪90年代诞生的,算算到现在已经是25岁的大叔级的语言了(跟它同一个时代的还有一个鼎鼎大名的java是在1995发行的, 红了几十年).

但是Python真正成名比java晚了很多年,其实也主要是应用领域的时代变迁.(猜测为啥,对了大数据的出现)

Python2是Python里面一个非常重要的版本,最早的版本是从2001的时候开始的,特别是从2006年开始py2.5的发布,python的功能逐渐强大起来,慢慢开始稳定下来,并且差不多1-2年左右递增一个版本,在08年左右开始慢慢的火起来了.

而Python3最早是从2008开始发布,但是py3.0的版本非常不稳定,所以社区更新的很快,差不多几个月就更新一次。所以一开始的时候并没有很多人用,只到2014春暖花开的时候python3.4 deliver了才开始慢慢稳定下来.

下面我们看一个数据,这是Python社区联和一些网站在2014做的一个调查,关于Python2/3,部分的结果如下:

1).97.51%用户还在写Python2的代码

2).60%的用户写Python3的代码

3).78.09%的用户更多地写Python2代码

4).77.09%的用户认可Python3

目前有一些Linux里的操作系统已经默认使用Python3:

1).Arch Linux (轻量级的Linux操作系统)

2).Ubuntu 16.04 (一个桌面应用为主的Linux操作系统)

3).Fedora(Redhat桌面版本的延续)

2.Python2和Python3的主要区别:

目前最新的数据是,Python有两个版本:一个是2.7.12版,一个是3.5.12版.

那么Python2运行的好好的,为啥突然要出个Python3呢,其实是为了解决Python2里面一些历史问题

第一个是字符串的问题:

Python 2 中文本和二进制数据是一个烂摊子,Python中的str 是代表二进制数据还是文本数据是有二义性,文字既能代表文本数据又能代表二进制数据这很麻烦,此类错误发生的时候,我们很难意识到。

第二个是对Unicode的支持

由于python是在1991年2月开源发布,这意味着它早于在1991年10月发布的第一版 Unicode 标准。在接下来几年中,晚于 Unicode 标准出现的语言都选择在支持 Unicode 编码的基础上实现自己的 str 类型,这让 Python 2 处于尴尬的境地。

目前是一个python2/3共存的时代,这两个版本是不兼容的。

python2现在只是做bug的修复,新硬件和操作系统兼容的相关维护工作。不会再有新的功能加入,python2只支持到2020年.

现在Python正在朝着3版本进化,在进化过程中,大量的针对2.x版本的代码要修改后才能运行,所以目前有许多第三方库还暂时无法在3.x上使用。

不过可以畅想一下,也许再过几年情况就会好很多,毕竟全世界有很多优秀的程序员正在把一些库从Py2往Py3上迁移.

3.选择还是要根据自己的需求

若是企业的开发,要满足工作的需求,尤其是依赖的软件只能运行在Python2下,首选Python2.比如你的开发需要依赖大量的第三方的库(因为学Python非常大的一个原因就是因为它有成千上万的第三方包),像大量的数据分析,科学计算,还是选Python2吧.

如果你是自己学习,研究的话,愿意拥抱变化,那么建议学Python3,因为它是未来的方向.

结论:

编程其实主要是对编程思想的理解和经验的积累,千万不要因为纠结学Py2还是Py3而浪费大量时间。

Py2和Py3里面的思想基本是相通的,招式是类似的.当你熟悉Python到一定的程序的时候,会Py2的人学Py3只需要很短的时间。

所以不要再纠结细枝末节的语法差异,而耽误了宝贵的学习时间。

好了Python2和Python3的恩怨情仇就讲到这里啦(它们还要相爱相杀一段时间),希望能给初学者一些启发,若有什么不懂的,也可以留言跟我探讨交流.

最后说一下,原创不易,希望大家能够给点支持,欢迎转发,留言,也是对我的一点鼓励和动力.

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。