一直以来,Python 3都超级尴尬。Python3的设计原因导致某些语法不兼容Python2,用户在Python2里投入越多,迁移的成本就越大,就越难迁移到新的版本。
比如NumPy或Pandas,当其从Python2迁移到Python3时,需要修改大量代码,牵扯的行业极多,影响极大,原来服务很好的软件,可能引入新的风险或者bug,这些隐形成本和风险都对迁移带来了难度和阻力。
而今,Python核心团队计划在2020年停止支持Python 2,这也算是下了最后通牒。用户终于可以迁移到 Python3,适配新的软件栈,拥抱Python3的新特性了。
NumPy 的声明
Python 核心团队计划在2020 年停止支持 Python 2。NumPy 自 2010 年以来同时并行支持 Python 2 和 Python 3,但是由于资源有限,支持 Python 2 变成了一个日渐加重的负担;因此,我们计划最终停止支持 Python 2。现在我们进入了社区支持的 Python 2 的最后几年,NumPy想要说明我们的计划,并以帮助我们的下游生态制定计划,尽可能顺利地实现过渡为目标。
我们的当前计划如下:
2018 年 12 月31 日之前,NumPy所有版本仍将全面支持 Python 2 和 Python 3。2019 年 1 月 1 日开始,所有新功能版本将仅支持 Python 3。支持 Python 2 的最后版本将被指定为长期支持版本(LTS),即我们将继续修复 bug,对bug 修复版本的支持时间较长。具体讲,社区将支持它到2019 年12 月31 号。
2020 年 1 月 1 日,我们将向 Python 2 致敬,最后 Python 2 支持版本的社区支持将会结束。但是,你仍可在 PyPI 上无限期地使用它。如果任何商业供应商希望延长LTS 支持时间,我们可以让其使用官方NumPy 库中的LTS 分支来做协调。
如果你是一名在 2020 年或以后仍需 Python 2 支持的 NumPy 用户,那么请联系你的供应商。如果你是供应商,想要在2020 年以后继续支持 Python 2 上的 NumPy,请联系我们。理想情况下,我们希望你在 LTS 结束之前参与维护,以便顺利实现过渡。
其他即将放弃支持 Python 2.x 的工具
以下项目已经明确表示将在2020 年以前放弃对于Python 2 的支持。
参考:
http://www.python3statement.org/#sections30-projects
精选推荐
深度学习高手该怎样炼成?这位拿下阿里天池大赛冠军的中科院博士为你规划了一份专业成长路径