在python中文開發者社區看到一片比較好的文章,詳細介紹了Python2 和 Python3 的區別及兼容技巧,在此記錄,以便日後查看。
https://www.pythontab.com/html/2018/pythonhexinbiancheng_1026/1369.html
如果還有不明白的,可以參考python官方文獻:
選擇python2 or python3?摘自上述鏈接:
最近 Python 之父 Guido van Rossum(龜爺)終於在 Python 官方郵件組落實了 Python 2.7 的終焉之日(EOL)。
說的是 Python 2.7 的 EOL 日期最終確定爲 2020 年 1 月 1 日,之後不會有任何更新,包括源碼的安全補丁。
Python 3 被欽定爲 Python 的未來,於 2008 年末發佈,是目前正在開發的版本。旨在解決和修正 Python 2 遺留的設計缺陷、清理代碼庫冗餘、追求有且僅有一種最佳實踐方式來執行任務等問題。
起初,由於 Python 3 不能向後兼容的事實,導致了用戶採用緩慢,對初學者不友好等問題。但在 Python 社區的努力和決絕態度下,截至龜爺發出郵件之前,已經有了 21903 個 Packages 可以支持 Python 3.5,其中包括了絕大多數最受歡迎的封裝庫,與此同時也有越來越多的封裝庫(e.g. Django、Numpy)表示其新版本將不再支持 Python 2。
Python 2.7 於 3.0 之後的 2010 年 7 月 3 日發佈,計劃作爲 2.x 的最後一個版本。Python 2.7 的歷史任務在於通過提供 2 和 3 之間的兼容性措施,使 Python 2.x 的用戶更容易將代碼移植到 Python 3.x 上。那麼如果你希望自己的代碼能夠兼容兩個不同的版本,首先你起碼要讓代碼能夠正常的運行在 Python 2.7 上。
本人更傾向於python 3,所以我的博客裏所有涉及python的文章皆是用的python3.
最終你怎麼選擇?根據你的需求,選擇合適的版本。