Python之父兩年前就已宣布Python 2 7將于2020年1月1日終止支持,現(xiàn)在這一天已到來,亦即意味著開發(fā)者將不會再接收到任何來自Python 2 7的錯
Python之父兩年前就已宣布Python 2.7將于2020年1月1日終止支持,現(xiàn)在這一天已到來,亦即意味著開發(fā)者將不會再接收到任何來自Python 2.7的錯誤修復(fù)或安全更新。
為應(yīng)對這一變化,不少開源項目以及Linux發(fā)行版都提前放棄了對Python 2.7的支持,如IPython、NumPy和Fedora等。畢竟Python 3的功能比Python 2更優(yōu)秀,而且只使用Python 3比同時維護(hù)兩個版本的成本更低。
不過即便如此,Python 2和Python 3的不兼容也阻礙了部分用戶的升級念想。
升級建議
如果你的關(guān)鍵項目仍在使用Python 2,無需因為Python 2.7終止支持而擔(dān)心項目的運行受影響。畢竟PyPI的流行軟件包現(xiàn)在大多數(shù)仍同時使用Python 2和3。另外,為了使過渡更順暢,官方移植指南也提供了建議,幫助用戶將Python 2代碼移植到Python 3。
如果你的項目穩(wěn)定可靠,且沒有任何安全方面的問題,你甚至可以同時擁有Python 2項目和Python 3項目,并在不同的.conda環(huán)境中輕松管理它們。
Python 2.7于2020年1月1日正式停止維護(hù),這也意味著Python 2完全退休,現(xiàn)在是Python 3的時代。
PyPI(Python社區(qū)開發(fā)和共享的軟件的存儲中心Python Package Index)的大多數(shù)流行軟件包現(xiàn)在都可以在Python 2和3上運行,并且每天都在增加,Python 2的退休將會影響數(shù)百萬系統(tǒng)的安全性。
由于Python 2與下一代Python 3的兼容性問題,關(guān)于Python 2的退休一直以來都是開發(fā)者與各公司關(guān)注的重點,因為在2代退休前,需要確保業(yè)務(wù)都盡可能遷移到3,方便系統(tǒng)后續(xù)維護(hù)與跟進(jìn)。目前一些知名項目都已經(jīng)做好了相應(yīng)的準(zhǔn)備,例如NumPy、Requests和TensorFlow等許多知名項目在2020年將停止支持2.x,Ubuntu 20.04 LTS開發(fā)周期的重要任務(wù)是移除Python 2、QEMU結(jié)束了對Python 2的支持、Fedora也提出了統(tǒng)一流程讓棄用上千Python 2軟件包更可控……
不過,雖然開發(fā)者與各公司需要盡快從Python 2遷移到Python 3,但是與Windows XP一樣,官方宣布其退休后,它還會長時間運行在眾多業(yè)務(wù)中,并且會有官方以外的其它公司出面接手維護(hù)。
但不論怎樣,還是建議聽從官方遷移到Python 3的建議。為了簡化過渡,官方遷移指南提供了有關(guān)在Python 3中運行Python 2代碼的建議。
Python 2,感謝你多年來的忠實服務(wù)。
Python 3,現(xiàn)在是你的時代。