Python 2已正式寿终正寝

栏目: IT技术 · 发布时间: 4年前

内容简介:【51CTO.com快译】Python 2已正式寿终正寝。Python编程语言团队刚宣布了Python 2的最后一个版本Python 2.7.18。展望未来,Python 2将不再收到更新、错误报告、修复版或更改。Python软件基金会建议使用Python 2的那些人尽快切换到Python 3。Python 3引入了不向后兼容的新功能和改进功能。自2008年以来,版本3处于积极开发的状态。Python3的最新版是版本3.8.2,这是Python 3.8的第二个维护版本。团队目前正在开发Python 3.9,

Python 2已正式寿终正寝

【51CTO.com快译】Python 2已正式寿终正寝。Python编程语言团队刚宣布了 Python 2的最后一个版本Python 2.7.18。展望未来,Python 2将不再收到更新、错误报告、修复版或更改。

Python软件基金会建议使用Python 2的那些人尽快切换到Python 3。Python 3引入了不向后兼容的新功能和改进功能。自2008年以来,版本3处于积极开发的状态。Python3的最新版是版本3.8.2,这是Python 3.8的第二个维护版本。团队目前正在开发Python 3.9,该版本的早期预览版从本月开始供开发人员使用。

想进一步了解Python 2和Python 3之间的变化以及如何成功迁移到Python 3,软件开发网站SD Times采访了ActiveState的产品副总裁Jeff Rouse。以下是对话的编辑版。

SD Times:Python 2寿终正寝对组织而言意味着什么?

Rouse:引入Python 3时,Guido van Rossum及核心团队认为需要对该语言进行重大更改,这意味着他们要摈弃向后兼容性,而你在设计一种语言时这是艰难的决定。从新技术的角度来看,一二十年前做出的设计决策可能站不住脚,于是最终推出Python 3后,社区和核心语言维护者在十年间的大部分时间用于劝说人们从Python 2迁移到Python 3,以便所有维护者以及支持这两个版本的Python社区中的每个人都可以最终完成。

Python 2.7走到尽头意味着,将不再有任何错误修正版、没有改进,可能最重要的是,没有针对该语言的安全更新。这包括大多数社区软件包。

组织迁移到Python 3要花多久?

实际上,它们应该已经在考虑这一点。造势已有相当长一段时间。最初的想法是2010年左右每个人(都会)开始迁移。2014年将是截止日期,后来延长到了2020年。

组织应该已经在考虑,如果它们刚接触Python 3,那很好。它们实际上可以利用所有可用的内容、应用程序和项目来帮助从Python 2迁移到Python3。你需要执行一系列步骤来评估从Python 2迁移到Python 3需要多大的工作量,每种情况有所不同。

Python 2.7的最后版本已发布,你认为组织是否感受到了最终要积极迁移的压力?

是的,我们在ActiveState上已看到了这一幕。我们同时支持Python 2和Python 3,有许多新客户过来说“嘿,我仍在使用Python2。你能帮助我们摆脱困境吗?”或“你能给我们多一点时间,直到我们准备好使用Python 3吗?”

对于拥有庞大代码库的组织而言,进行更改并非易事。即使从Python 2迁移到Python 3不用重写,这项工作也足够重要,你需要非常认真地梳理代码库,以便确保将所有内容迁移过去。然后,出于同样的道理,你拥有代码库依赖的所有这些相关软件包,因此你还要考虑到这一点。

可能会有一些升级难题,因此组织应立即规划做好这项工作。要认识到安全漏洞和缺陷确实会慢慢出现。

如果他们计划将来维护应用程序,又想充分利用任何新技术,享有明显得到维护的安全更新和错误修正版,他们确实要转向Python 3。

你会在Python 2和Python 3之间看到什么区别?

Python 3确实加强了语法。Python的核心理念之一是,做某事只有一种方法,并且做得很好。Python的一大优点是,它是一种非常易读的语言,使用起来非常简单,以至于语言设计人员其实认定应该继续对此进行改进。

比如说,只有一种方法可以做迭代器(iterator),没有多种方法可以设定范围。因此,我认为开发人员会从语法方面受益匪浅,这使事情变得更简单了一点。Python 3的性能继续提高。标准库有大量改进。它以极其强大的方式处理异步函数;总体上讲,它旨在继续推进这门语言。

由于迁移过程中有许多考虑因素,组织如何才能成功地迁移过去?

首先要做的是弄清楚应用程序和实用程序面临的风险状况。然后,你便知道要投入多少,早做而不是晚做有多重要。第一件事其实是从Python 2应用程序出色的测试覆盖入手,因为在你迁移到Python 3时这至关重要,你的测试将继续表明该功能并未受到任何破坏。

我个人的看法是,如果你未使用最新的Python 2.7,也许你在使用2.6或2.7的早期版,那么确保一切正常运行是最明智的。然后,你实际上可以运行源代码转换器……这为你提供了将Python 2转换成Python 3的结果。之后,它会指出需要你手动修复的任何方面。

在此过程中,就你使用的各种软件包而言,你会在代码中遇到依赖项。你可能需要迁移至同一软件包的不同版本。

你如何看待Python在将来继续使用,Python 3将扮演怎样的角色?

如今,Python 3显然是数据科学背后的引擎,而且在许多方面,数据科学已围绕Python融合在一起。

所有世界优秀的数据科学都用Python来完成。我认为这种情况不会很快发生变化。

我们谈论Python 2时,有相当多的数据科学工作也是用Python 2完成的,但是大多数主要软件包(比如TensorFlow等)在相当早的修订版中不再支持Python 2。因此,如果你其实不考虑搞真正的数据科学,可以用Python 2处理很多数据分析,但是要搞真正的数据科学和机器学习,你确实应该使用Python 3。

原文标题:Moving from Python 2 to Python 3

作者:Christina Cardoza

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】


以上所述就是小编给大家介绍的《Python 2已正式寿终正寝》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

构建之法(第三版)

构建之法(第三版)

邹欣 / 人民邮电出版社 / 2017-6 / 69.00元

软件工程牵涉的范围很广, 同时也是一般院校的同学反映比较空洞乏味的课程。 但是,软件工程 的技术对于投身 IT 产业的学生来说是非常重要的。作者有在世界一流软件企业 20 年的一线软件开 发经验,他在数所高校进行了多年的软件工程教学实践,总结出了在 16 周的时间内让同学们通过 “做 中学 (Learning By Doing)” 掌握实用的软件工程技术的教学计划,并得到高校师生的积极反馈。在此 ......一起来看看 《构建之法(第三版)》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试