python3.5和3.7区别大吗_选择 Python3.6 还是 Python 3.7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
选择 Python3.6 还是 Python 3.7
Python 3.7已正式推出全新版本Python 3.8!如果你也对新功能充满好奇与期待,则不妨立即升级吧!面对选择过多的问题,该如何解决呢?就像追剧一样令人欲罢不能——及时升级以避免潜在的问题。
首先大家要知道 Python 3.7 是对 Python 3.6 的升级。
Python3.7有什么新东东?
参考文档指出,可查阅Python官方文档了解3.7版本的新特性介绍。值得注意的是,在相较于Python 3.6而言的情况下,Python 3.7基本上实现了与前一版本的高度兼容性,并且仅存在以下特殊情形:
Backwards incompatible syntax changes:
async and await are now reserved keywords.
这句话指出,在版本升级中存在唯一的不兼容性在于async和await成为Python语言中保留的关键字。
什么意思?
相当于说,在编程语言中(async 和 await),它们类似于像import、for和while这样的关键字(也被系统保留为具有特定用途的关键字)。
就是说,在Python 3.7版本中,不可以将这两个关键字(async和await)用作变量名、函数名或类名。
比如,我像下面这样定义变量和函数:
async = 1
def await():
pass
使用Python3.6 运行,没有问题, 而在Python 3.7 里面就会报如下错误
SyntaxError: invalid syntax
如何选择呢?
对于采用Python 3.6作为主要开发环境且规模较大的项目而言,在当前情况下,加快转向Python 3.7可能并不明智。由于缺乏对你项目的代码以及所依赖第三方库代码与Python 3.7兼容性的测试经验,因此在此给出这一建议。毕竟这是个相对新版本。
例如,在撰写这篇文章的时间为2018年7月13日时,我发现Postgres数据库的Python API驱动库psycopg2在Python 3.7版本中出现了安装问题。
3.7 的 pip 执行
pip install psycopg2-binary
安装就会失败,提示 Error: pg_config executable not found
而 3.6的pip安装就没有问题。
所以,我们最好等到3.7被普遍使用了,再转过去。
现将升级至Python3.7版本;只有在贵项目对Python3.7特有的新增特性有迫切需求的情况下才必要进行测试覆盖率充分性的校验;以确保新环境下的原有代码能够顺利运行。
我还在用Python2.7怎么办?
如果你目前的应用是基于Python2.7,并且该应用未来还需要持续扩展,则认为应该在适当的时候升级至Python3版本。
鉴于 Python2 已在官方退出历史舞台
如果决定将项目从Python 2迁移到 Python 3,则当前建议首先 upgrade 至 Python 3.6 版本。由于业界目前对 ... 的支持还是比较普遍的(注:此处应有数学公式),直至未来 ... 的兼容性逐渐普及时再进行 upgrade 将是明智的选择。
更多内容,百度【白月黑羽】移步到Python3教程了解
