Python 3.8 已發佈,如今是切換至新版本的好時機嗎?

Python 3.8 已於前兩週正式發佈,不過目前大多數開發者主要使用的還是 Python 3.7.x 或更舊的版本。html

python

事實上,馬上切換到使用 Python 3.8 可能會引起一些問題。想知道什麼時候切換至 Python 3.8?下文將簡要概述切換主要的 Python 版本以及進行切換時可能會遇到的問題(來自一名開發者的心得經驗)。docker

 

 

1.缺乏軟件包app

 

opencv-python是一個十分受歡迎的軟件包,其下載量約爲 5000 萬。但正如本文提到的同樣,若是你如今(2019年10月28日)嘗試在 Python 3.8 上安裝它會發現並不起做用:工具

 

$ docker run python:3.8-slim pip install opencv-pythonERROR: Could not find a version that satisfies the requirement opencv-python (from versions: none)ERROR: No matching distribution found for opencv-python

 

緣由爲什麼?若是咱們如今在 PyPI 上訪問 opencv-python 的文件頁面,將會看到沒有可用的面向 Python 3.8 的軟件包。晚些時候這個問題可能會被修復。可是如今的狀況是,在新的主要版本發佈以後的不久時間內,咱們將沒法下載許多庫。ui

 

有時候,這些問題只需從新構建庫便可解決,有時候則須要進行一些代碼調整。但無論是什麼問題,Python 的主要版本和軟件包的可用性之間都存在一些滯後。url

 

 

2.Python 中的錯誤spa

 

Python 3.7.0 於 2018 年 6 月 27 日發佈,3.7.1 於 4 個月後 2018 年 10 月 20 日發佈,其中包括許多錯誤修正。因此按照慣例,Python 3.8 未來也會有一個錯誤修復版本,可是鑑於主要版本之間的間隔期爲 18 個月,所以會產生不少新的但不會普遍使用的代碼。這意味着後續版本將具備大量的錯誤修復。orm

 

3.沒法真正使用新的語法htm

 

Python 3.8 引入了新語法,但其餘工具還沒有同步跟進以支持新語法,例如自動格式化程序和代碼檢測工具等。除非「配套設施」已同步更新,不然咱們將沒法真正使用新的語法。

 

因此何時切換至使用主要的新 Python 版本?

 

至少,咱們須要等到:

 

  • 全部的庫都明確支持新的 Python 版本。

  • 所依賴的全部工具都明確支持新的 Python 版本。

 

 

所以,不妨在新的主要 Python 版本發佈後等待幾個月,咱們再去嘗試。若是確實火燒眉毛,能夠等到第一個小版本更新發布後再嘗試,這裏的狀況是 Python 3.8.1。

Python 3.8 已於前兩週正式發佈,不過目前大多數開發者主要使用的還是 Python 3.7.x 或更舊的版本。

 

事實上,馬上切換到使用 Python 3.8 可能會引起一些問題。想知道什麼時候切換至 Python 3.8?下文將簡要概述切換主要的 Python 版本以及進行切換時可能會遇到的問題(來自一名開發者的心得經驗)。

 

 

1.缺乏軟件包

 

opencv-python是一個十分受歡迎的軟件包,其下載量約爲 5000 萬。但正如本文提到的同樣,若是你如今(2019年10月28日)嘗試在 Python 3.8 上安裝它會發現並不起做用:

 

$ docker run python:3.8-slim pip install opencv-pythonERROR: Could not find a version that satisfies the requirement opencv-python (from versions: none)ERROR: No matching distribution found for opencv-python

 

緣由爲什麼?若是咱們如今在 PyPI 上訪問 opencv-python 的文件頁面,將會看到沒有可用的面向 Python 3.8 的軟件包。晚些時候這個問題可能會被修復。可是如今的狀況是,在新的主要版本發佈以後的不久時間內,咱們將沒法下載許多庫。

 

有時候,這些問題只需從新構建庫便可解決,有時候則須要進行一些代碼調整。但無論是什麼問題,Python 的主要版本和軟件包的可用性之間都存在一些滯後。

 

 

2.Python 中的錯誤

 

Python 3.7.0 於 2018 年 6 月 27 日發佈,3.7.1 於 4 個月後 2018 年 10 月 20 日發佈,其中包括許多錯誤修正因此按照慣例,Python 3.8 未來也會有一個錯誤修復版本,可是鑑於主要版本之間的間隔期爲 18 個月,所以會產生不少新的但不會普遍使用的代碼。這意味着後續版本將具備大量的錯誤修復。

 

3.沒法真正使用新的語法

 

Python 3.8 引入了新語法,但其餘工具還沒有同步跟進以支持新語法,例如自動格式化程序和代碼檢測工具等。除非「配套設施」已同步更新,不然咱們將沒法真正使用新的語法。

 

因此何時切換至使用主要的新 Python 版本?

 

至少,咱們須要等到:

 

  • 全部的庫都明確支持新的 Python 版本。

  • 所依賴的全部工具都明確支持新的 Python 版本。

 

 

所以,不妨在新的主要 Python 版本發佈後等待幾個月,咱們再去嘗試。若是確實火燒眉毛,能夠等到第一個小版本更新發布後再嘗試,這裏的狀況是 Python 3.8.1。

相關文章
相關標籤/搜索