<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          16歲高中生整理,一張圖展示Python 3.9八大新特性

          共 2030字,需瀏覽 5分鐘

           ·

          2021-04-13 13:37

          金磊 發(fā)自 凹非寺

          量子位 報道 | 公眾號 QbitAI

          大家好,歡迎來到 Crossin的編程教室 !

          Python 發(fā)展至今,已經(jīng)來到了 Python3.9 版本。雖然從入門學(xué)習(xí)角度來說,只要是 Python3,基礎(chǔ)語法都是相同,但每個版本更新還是會帶來一些新的功能。

          今天這篇文章就給大家聊一聊關(guān)于 Python 3.9 的新特性。

          先來速看下此次發(fā)布版本的重點(diǎn)。

          語法特性

          • PEP 584,為 dict 增加合并運(yùn)算符。

          • PEP 585,標(biāo)準(zhǔn)多項(xiàng)集中的類型標(biāo)注泛型。

          • PEP 614,放寬對裝飾器的語法限制。

          內(nèi)置特性

          • PEP 616,移除前綴和后綴的字符串方法。

          標(biāo)準(zhǔn)庫中的特性

          • PEP 593,靈活的函數(shù)和變量標(biāo)注。

          • 添加了 os.pidfd_open() ,允許不帶競爭和信號的進(jìn)程管理。

          解釋器方面的改進(jìn):

          • PEP 573,從 C 擴(kuò)展類型的方法快速訪問模塊狀態(tài)。

          • PEP 617,CPython 現(xiàn)在使用基于 PEG 的新解析器。

          • ……

          庫模塊

          • PEP 615,IANA 時區(qū)數(shù)據(jù)庫現(xiàn)在已包含于標(biāo)準(zhǔn)庫的 zoneinfo 模塊。

          • 圖的拓?fù)渑判驅(qū)崿F(xiàn)現(xiàn)在已由新的 graphlib 模塊提供。

          為了更好地理解此次更新,Twitter上一位16歲少年Pratham Prasoon,還自制了一張「Python 3.9 新特性必知圖」。

          列出了他認(rèn)為比較重要的八大新特性,廣受網(wǎng)友好評。

          1、字典合并與更新運(yùn)算符

          此次「字典的合并與更新運(yùn)算符」的新特性,是Python3.9的一大亮點(diǎn)。

          合并 (|) 與更新 (|=) 運(yùn)算符已被加入內(nèi)置的 dict 類,擴(kuò)充了現(xiàn)有的 dict.update 和 {**d1, **d2} 字典合并方法。

          在Prasoon提供的圖中也展示了對應(yīng)的示例,如下圖所示:

          2、新增用于移除前綴和后綴的字符串方法

          在Python的官方文檔,以及Prasoon的圖表中,也著重展示了新的用于「移除前綴和后綴的字符串」方法。

          str.removeprefix(prefix)str.removesuffix(suffix)可以方便地從字符串中,移除不需要的前綴或后綴:

          3、標(biāo)準(zhǔn)多項(xiàng)集中的類型標(biāo)注泛型

          類型標(biāo)注方面,現(xiàn)在可以使用內(nèi)置的多項(xiàng)集類型(例如 list 和 dict)作為通用類型,而不必再從 typing 導(dǎo)入對應(yīng)的大寫形式類型名。

          4、__import__()特性修改

          __import__() 現(xiàn)在會引發(fā) ImportError 而不是 ValueError。

          至于原因,在Python的官方文檔中有相應(yīng)的解釋:后者曾經(jīng)會在相對導(dǎo)入超出其最高層級包時發(fā)生。

          5、新增的模塊

          在新增模塊方面,zoneinfo模塊為標(biāo)準(zhǔn)庫引入了 IANA 時區(qū)數(shù)據(jù)庫

          這是一個基于系統(tǒng)時區(qū)數(shù)據(jù)的實(shí)體 datetime.tzinfo 實(shí)現(xiàn),示例如下圖所示。

          6、改進(jìn)的模塊

          除了新增的模塊外,Python3.9還對原有的一些模塊進(jìn)行了改進(jìn)。

          Prasoon舉出了他認(rèn)為比較重要的一項(xiàng)——Random。

          名為random.Random.randbytes的方法,可以用于生成隨機(jī)字節(jié)串,如下圖所示。

          此外,還有cancel_futures。

          Python3.9將新的 cancel_futures 形參,添加到 concurrent.futures.Executor.shutdown(),可以取消尚未開始運(yùn)行的所有掛起的 Future,而不必等待它們完成運(yùn)行再關(guān)閉執(zhí)行器。

          當(dāng)然,除了這八大新特性外,Python官方文檔也更為詳細(xì)地列舉了此次更新的內(nèi)容。

          感興趣的讀者可以戳此鏈接做更深入的了解:

          https://docs.python.org/zh-cn/3.9/whatsnew/3.9.html

          關(guān)于作者

          Pratham Prasoon是一位16歲的印度高中生,對金融充滿激情,對編程世界充滿好奇,自稱是一個科學(xué)極客(science geek)。

          作為一名編程人員,他認(rèn)為自己是「工具不可知」類型選手,也就是說,沒有特別唯一是使用的編程語言,而是會根據(jù)自己的目的而做出選擇。

          目前,他正在學(xué)習(xí)React、 Flask、Django和Tensorflow。

          參考鏈接:

          https://twitter.com/PrasoonPratham/status/1313392420038483968

          如果文章對你有幫助,歡迎轉(zhuǎn)發(fā)/點(diǎn)贊/收藏~



          _往期文章推薦_

          Python3新特性:類型注解




          如需了解付費(fèi)精品課程教學(xué)答疑服務(wù)
          請?jiān)?strong style="max-width: 100%;overflow-wrap: break-word !important;box-sizing: border-box !important;">Crossin的編程教室內(nèi)回復(fù): 666

          瀏覽 115
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  中国一集大毛片 | 三级片影音先锋 | 一到本在线视频无码 | 你懂的视频网站 | 深爱激情网五月天 |