python3.6和3.7的区别_python3.6和3.7有什么区别
Python 3.7 已經(jīng)發(fā)布了,目前Python的用戶,主要使用的版本 應(yīng)該是 Python3.6 和 Python2.7 ,那么是不是該轉(zhuǎn)到 Python 3.7 呢?
首先大家要知道Python 3.7 是對 Python 3.6 的升級。Python官方對 3.7 的新特性:(推薦學習:Python視頻教程)
PEP 538, 默認解釋器的命令行接口將通過一個新的環(huán)境變量PYTHONCOERCECLOCALE自動在有可行的基于UTF-8的環(huán)境(如C.UTF-8,C.utf8和 UTF-8)時轉(zhuǎn)換,取決于環(huán)境變量是否設(shè)置和其值。
PEP 539, 為CPython帶來了一個針對本地線程存儲的新C-API。PEP 540, 加入了一個新的UTF-8模式,默認在POSIX兼容的操作系統(tǒng)上開啟,可通過環(huán)境變量PYTHONUTF8 更改。
PEP 552, 為pyc格式文件新增了一個基于哈希值的源碼文件驗證。
PEP 553, 一個新增的內(nèi)置函數(shù)breakpoint()使你可以更方便的進入Python或自定義Debugger。
PEP 557, 一個新裝飾器Data Classes, 減少創(chuàng)建類時所需要的代碼量,并可自動創(chuàng)建__init__,__repr__, 和 __eq__ 等方法。
PEP 560, 通過修改解釋器核心部分優(yōu)化了typing模塊和泛型類型。
PEP 562, 對模塊屬性的自定義訪問。
PEP 563, 通過推遲對注釋語句的分析從而優(yōu)化Python的類型提示。
PEP 564, 為time模塊新增支持返回int整數(shù)形式的納秒精度方法。
PEP 565, 再一次默認在 __main__ 處顯示Deprecation Warning如SyntaxWarning, RuntimeWarning。
PEP 567,新增contextvars模塊,通過上下文管理器以防止變量的狀態(tài)在并發(fā)代碼中意外泄漏到其它代碼。
更多詳情可去python官網(wǎng)查詢.
我們最需要注意的是 相對于 3.6 來說, 3.7 在語法上幾乎是完全 兼容, 除了如下這一點:1
2Backwards incompatible syntax changes:
asyncand await are now reserved keywords.
這段話,指出了 3.7 的唯一不兼容 3.6 的地方就是 async 和 await 變成了Python語言中保留的關(guān)鍵字了。
什么意思?
就是async和await這兩個詞就像 import, for, while這些詞一樣, 是系統(tǒng)保留特殊用途的關(guān)鍵字。
也就是說在Python 3.7 里面你不能使用定義變量、函數(shù)之類的名字
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的python3.6和3.7的区别_python3.6和3.7有什么区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux一个vlan配置多个端口映射,
- 下一篇: python调用.a静态库_Python