转自: 白月黑羽在线教程:http://www.python3.vip/doc/blog/python/home/

选择 Python3.6 还是 Python 3.7

Python 3.7 已经发布了,目前Python的用户,主要使用的版本 应该是 Python3.6 和 Python2.7 ,那么是不是该转到 Python 3.7 呢?

首先大家要知道Python 3.7 是对 Python 3.6 的升级。Python官方对 3.7 的新特性描述链接如下:

https://docs.python.org/3/whatsnew/3.7.html

我们最需要注意的是 相对于 3.6 来说, 3.7 在语法上几乎是完全 兼容, 除了如下这一点:

Backwards incompatible syntax changes:async and await are now reserved keywords.

  

这段话,指出了 3.7 的唯一不兼容 3.6 的地方就是 async 和 await 变成了Python语言中保留的关键字了。

什么意思?

就是 async 和 await 这两个词 就像 import, for, while 这些词一样, 是系统保留特殊用途的关键字。

也就是说在Python 3.7 里面你不能使用定义 变量、函数之类的 名字

比如,我像下面这样定义变量和函数:

async = 1
def await(): pass 

使用Python3.6 运行,没有问题, 而在Python 3.7 里面就会报如下错误

SyntaxError: invalid syntax

如何选择?

所以,如果项目 目前使用的是 Python 3.6 ,而且项目又比较大的话,个人建议不用太着急转到 3.7 上去。 因为不知道你的项目代码和依赖的第三方库的代码是不是做过3.7的兼容性测试, 毕竟 3.7 刚刚出来不久。

比如,白月黑羽写这篇文章的时间是2018年7月13号,我就发现 postgresql 数据库的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怎么办呢?

而如果目前 项目使用的是 Python 2.7 运行,那 主要是 Python 2 和 Python 3 之间 的 迁移问题了, 语法差异有些大。

如果项目声明周期比较长的话, 建议还是 要在合适的时候升级到 Python3。 因为毕竟Python2 在2020年官方就不再维护,到时候出现什么安全漏洞之类的问题,就比较麻烦了。 或者是 有好用的第三方库, 这些库可能没有 Python2 的版本,那样就更麻烦了。

如果决定吧项目从Python2 升级到 Python3, 目前可以先升级到Python3.6 , 因为业界目前对 3.6 的支持还是比较普遍的。 等以后 3.7 支持比较普遍后,再做升级不迟。

转自: 白月黑羽在线教程:http://www.python3.vip/doc/blog/python/2018071101/

转载于:https://www.cnblogs.com/allenblogs/p/9376210.html

选择 Python3.6 还是 Python 3.7相关推荐

  1. python3.8还是3.7_选择 Python3.6 还是 Python 3.7

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 选择 Python3.6 还是 Python 3.7 Python 3.7 已经发布了, 又有新版本玩喽!!但是有选择症的你,怎么办呢?像追剧一样,赶快升 ...

  2. python 3.5 3.6 3.7_选择 Python3.6 还是 Python 3.7

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 选择 Python3.6 还是 Python 3.7 Python 3.7 已经发布了, 又有新版本玩喽!!但是有选择症的你,怎么办呢?像追剧一样,赶快升 ...

  3. python3.6与3.7的区别_选择 Python3.6 还是 Python 3.7

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 选择 Python3.6 还是 Python 3.7 Python 3.7 已经发布了, 又有新版本玩喽!!但是有选择症的你,怎么办呢?像追剧一样,赶快升 ...

  4. python3.6和3.8_选择 Python3.6 还是 Python 3.7

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 选择 Python3.6 还是 Python 3.7 Python 3.7 已经发布了, 又有新版本玩喽!!但是有选择症的你,怎么办呢?像追剧一样,赶快升 ...

  5. 白月黑羽python_白月黑羽来帮你分析现在是选择 Python3.6 还是 Python 3.7

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 选择 Python3.6 还是 Python 3.7? Python 3.7 已经发布了, 又有新版本玩喽!!但是有选择症的你,怎么办呢?像追剧一样,赶快 ...

  6. python3.7和3.6区别_选择 Python3.6 还是 Python 3.7

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 选择 Python3.6 还是 Python 3.7 Python 3.7 已经发布了, 又有新版本玩喽!!但是有选择症的你,怎么办呢?像追剧一样,赶快升 ...

  7. 是时候将你的Python版本升级到3.8了!为什么我选择Python3.8?

    你是否还在使用Python3.7,3.6--甚至是更老的Python版本? 确实,尝试去使用一个比较"新"的Python版本存在一定风险,我们容易遇到一些问题: 生态,各种库的支持 ...

  8. ubuntu 升级python3.8_Ubuntu上python升级到最新3.8版

    1. 概述 本文记录在 Ubuntu 16.04 上将 python 升级为 3.8 版本,并配置为系统默认 python3 的过程. 在 Ubuntu 16.04 中,python3 的默认版本为 ...

  9. python3.7下载教程视频_视频 | 我选择Python3.7来学习!顺便把教程分享给大家

    原标题:视频 | 我选择Python3.7来学习!顺便把教程分享给大家 [文章正文] Python 3.7增添了众多新的类,可用于数据处理.针对脚本编译和垃圾收集的优化以及更快的异步I/O. Pyth ...

最新文章

  1. c# 数据可视化_#OpenVisConf上的22位数据可视化从业者的10点收获
  2. C#基础概念二十五问 【二】 [转]
  3. java进阶之注解篇
  4. 农场js_通过销售农场商品来解释Web API
  5. PHP正则表达式函数用法
  6. (转)SpringMVC学习(十一)——SpringMVC实现Resultful服务
  7. VMvare虚拟机如何删除安装的ubuntu操作系统
  8. Reverse Interger
  9. 新手CrossApp 之demo SecondViewController小结
  10. Mixly Aduino 超声波~蜂鸣器
  11. linux 关机 日志记录,linux查看开关机记录
  12. drawerLayout 抽屉的另一半,设置为透明的颜色
  13. 汇编语言--如何调用子程序
  14. 驾驭你的“职场布朗运动”--李云
  15. Ps 的模板文件格式 PSDT
  16. rpg服务器无限刷金币bug,魔兽世界怀旧服:邮箱交易BUG无限刷金币?小号回档一次1000金!...
  17. C语言小型商品管理系统
  18. 定语从句--专升本语法
  19. 服务器端包含SSI(Server Side Include)简介
  20. 数据脱敏为何如此重要?

热门文章

  1. 特稿 | OceanBase 连破纪录:蚂蚁技术人的砥砺前行
  2. 如何让快递更快?菜鸟自研定时任务调度引擎首次公开
  3. 手游引擎之战再现新挑战者,OGEngine来了
  4. 【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【06】天(准考证组委会已下发,请查询)
  5. pmp每日三题(2022年3月4日)
  6. 软件技术专业-就业提示(IT类详细岗位分化)
  7. 判断当前时间是否在某个时间范围内
  8. webstorm 激活方法
  9. python——函数 10、函数的嵌套
  10. Eclipse + Apache Axis2 发布RESTful WebService(一)基础知识