Python3.9,「千呼萬喚始出來」。
先來速看下此次發(fā)布版本的重點。
新語法特性:
PEP 584,為 dict 增加合并運算符。
PEP 585,標準多項集中的類型標注泛型。
PEP 614,放寬對裝飾器的語法限制。
新內(nèi)置特性:
PEP 616,移除前綴和后綴的字符串方法。
新標準庫中的特性:
PEP 593,靈活的函數(shù)和變量標注。
添加了 os.pidfd_open() ,允許不帶競爭和信號的進程管理。
解釋器方面的改進:
PEP 573,從 C 擴展類型的方法快速訪問模塊狀態(tài)。
PEP 617,CPython 現(xiàn)在使用基于 PEG 的新解析器。
……
新庫模塊:
PEP 615,IANA 時區(qū)數(shù)據(jù)庫現(xiàn)在已包含于標準庫的 zoneinfo 模塊。
圖的拓撲排序?qū)崿F(xiàn)現(xiàn)在已由新的 graphlib 模塊提供。
為了更好地理解此次更新,Twitter上一位16歲少年P(guān)ratham Prasoon,還自制了一張「Python 3.9新特性必知圖」。
列出了他認為比較重要的八大新特性,廣受網(wǎng)友好評。
字典合并與更新運算符
此次「字典的合并與更新運算符」的新特性,是Python3.9的一大亮點。
合并 (|) 與更新 (|=) 運算符已被加入內(nèi)置的 dict 類,擴充了現(xiàn)有的 dict.update 和 {**d1, **d2} 字典合并方法。
在Prasoon提供的圖中也展示了對應(yīng)的示例,如下圖所示:
新增用于移除前綴和后綴的字符串方法
在Python的官方文檔,以及Prasoon的圖表中,也著重展示了新的用于「移除前綴和后綴的字符串」方法。
str.removeprefix(prefix)和str.removesuffix(suffix)可以方便地從字符串中,移除不需要的前綴或后綴:
標準多項集中的類型標注泛型
在類型標注方面,現(xiàn)在可以使用內(nèi)置的多項集類型(例如 list 和 dict)作為通用類型,而不必再從 typing 導(dǎo)入對應(yīng)的大寫形式類型名。
__import__()特性修改
__import__() 現(xiàn)在會引發(fā) ImportError 而不是 ValueError。
至于原因,在Python的官方文檔中有相應(yīng)的解釋:后者曾經(jīng)會在相對導(dǎo)入超出其最高層級包時發(fā)生。
新增的模塊
在新增模塊方面,zoneinfo模塊為標準庫引入了IANA 時區(qū)數(shù)據(jù)庫。
這是一個基于系統(tǒng)時區(qū)數(shù)據(jù)的實體 datetime.tzinfo 實現(xiàn),示例如下圖所示。
改進的模塊
除了新增的模塊外,Python3.9還對原有的一些模塊進行了改進。
Prasoon舉出了他認為比較重要的一項——Random。
名為random.Random.randbytes的方法,可以用于生成隨機字節(jié)串,如下圖所示。
此外,還有cancel_futures。
Python3.9將新的 cancel_futures 形參,添加到 concurrent.futures.Executor.shutdown(),可以取消尚未開始運行的所有掛起的 Future,而不必等待它們完成運行再關(guān)閉執(zhí)行器。
當然,除了這八大新特性外,Python官方文檔也更為詳細地列舉了此次更新的內(nèi)容。
責任編輯:xj
原文標題:關(guān)于Python3.9,看這張16歲高中生做的「新特性必知圖」就夠了
文章出處:【微信公眾號:人工智能與大數(shù)據(jù)技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
python
+關(guān)注
關(guān)注
56文章
4807瀏覽量
85037 -
編程語法
+關(guān)注
關(guān)注
0文章
7瀏覽量
6941 -
運算符
+關(guān)注
關(guān)注
0文章
172瀏覽量
11107
原文標題:關(guān)于Python3.9,看這張16歲高中生做的「新特性必知圖」就夠了
文章出處:【微信號:TheBigData1024,微信公眾號:人工智能與大數(shù)據(jù)技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
使用Python實現(xiàn)xgboost教程
思必馳AI辦公本Turbo重磅發(fā)布
大數(shù)據(jù)從業(yè)者必知必會的Hive SQL調(diào)優(yōu)技巧
pytorch和python的關(guān)系是什么
Python建模算法與應(yīng)用
opencv-python和opencv一樣嗎
用pycharm進行python爬蟲的步驟
export.sh配置編譯環(huán)境失敗的原因?如何解決?
云知聲攜手耘途教育成立云知學院福建分院
必易微再添新翼 必易微青島辦事處正式成立
云知聲推進港交所主板上市進程
云知聲再闖港股IPO
云知聲再闖港股IPO,深耕AI領(lǐng)域
基于Python的地圖繪制教程
![基于<b class='flag-5'>Python</b>的地圖繪制教程](https://file1.elecfans.com/web2/M00/C0/F4/wKgZomXb72KADq8JAABAFRaefm0918.png)
評論