python选什么版本好-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

python选什么版本好

云计算小粉 2018-05-10 20:10:50 6166

python选什么版本好

Python
分享到
取消 提交回答
全部回答(1)
  • 世事皆空
    2019-07-17 22:22:50

    很多初学者刚开始学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只需要很短的时间。

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

    最后说一下,原创真的不易,希望大家能够给点支持,欢迎转发转发转发,留言留言留言,重要的事情说三遍,也是对我的一点鼓励和动力.
    也欢迎更多喜欢Python的同学关注微信公众号: 菜鸟学python,一起来学python吧

    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

推荐文章
相似问题
推荐课程