新经网logo.png新经网

新经网
新经网是百姓城市生活中不可缺少的信息港。
新经网

Python 3.8 已发布,现在是切换至新版本的好时机吗?

导读 Python 3 8已于前两周正式发布,不过目前大多数开发者主要使用的仍是Python 3 7 x或更旧的版本。事实上,立刻切换到使用Python 3 8可能

Python3.8已于前两周正式发布,不过目前大多数开发者主要使用的仍是Python3.7.x或更旧的版本。事实上,立刻切换到使用Python3.8可能会引发一些问题。

想知道何时切换至Python3.8?下文将简要概述切换主要的Python版本以及进行切换时可能会遇到的问题(来自一名开发者的心得经验)。

1.缺少软件包

opencv-python是一个十分受欢迎的软件包,其下载量约为5000万。但正如本文提到的一样,如果你现在(2019年10月28日)尝试在Python3.8上安装它会发现并不起作用:

$dockerrunpython:3.8-slimpipinstallopencv-pythonERROR:Couldnotfindaversionthatsatisfiestherequirementopencv-python(fromversions:none)ERROR:Nomatchingdistributionfoundforopencv-python

原因为何?如果我们现在在PyPI上访问opencv-python的文件页面,将会看到没有可用的面向Python3.8的软件包。晚些时候这个问题可能会被修复。但是现在的情况是,在新的主要版本发布之后的不久时间内,我们将无法下载许多库。

有时候,这些问题只需重新构建库即可解决,有时候则需要进行一些代码调整。但不管是什么问题,Python的主要版本和软件包的可用性之间都存在一些滞后。

2.Python中的错误

Python3.7.0于2018年6月27日发布,3.7.1于4个月后2018年10月20日发布,其中包括许多错误修正。所以按照惯例,Python3.8将来也会有一个错误修复版本,但是鉴于主要版本之间的间隔期为18个月,因此会产生很多新的但不会广泛使用的代码。这意味着后续版本将具有大量的错误修复。

3.无法真正使用新的语法

Python3.8引入了新语法,但其他工具尚未同步跟进以支持新语法,例如自动格式化程序和代码检测工具等。除非“配套设施”已同步更新,否则我们将无法真正使用新的语法。

所以什么时候切换至使用主要的新Python版本?

至少,我们需要等到:

所有的库都明确支持新的Python版本。

所依赖的所有工具都明确支持新的Python版本。

因此,不妨在新的主要Python版本发布后等待几个月,我们再去尝试。如果确实迫不及待,可以等到第一个小版本更新发布后再尝试,这里的情况是Python3.8.1。

相关推荐



最新文章