<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>

          【Python】剛剛,Python3.10 正式發(fā)布了!終于增加了這個(gè)功能...

          共 1478字,需瀏覽 3分鐘

           ·

          2021-10-13 07:43

          通過(guò)官網(wǎng)看到,Python 3.10 剛剛正式發(fā)布了!



          我說(shuō)兩個(gè)新增的很香的功能,一個(gè)關(guān)于語(yǔ)法,另一個(gè)關(guān)于標(biāo)注庫(kù)里的函數(shù)。


          1 match和case 語(yǔ)法


          熟悉 C++ 的程序員對(duì)于switch和case不會(huì)陌生,但是對(duì)于Python 3.10以前,很遺憾,Python一直沒(méi)有類似的語(yǔ)法,不過(guò)自從3.10開(kāi)始Python終于有類似語(yǔ)法了!是 match和case,舉例如下:


          def?http_error(status):
          ????match?status:
          ????????case?400:
          ????????????return?"Bad?request"
          ????????case?401?|?403?|?404:
          ????????????return?"Not?allowed"
          ????????case?404:
          ????????????return?"Not?found"
          ????????case?418:
          ????????????return?"I'm?a?teapot"
          ????????case?_:
          ????????????return?"Something's?wrong?with?the?Internet"


          你看,與C++的switch和case用法是完全一樣的!


          2 更嚴(yán)謹(jǐn)?shù)?zip


          zip打包多個(gè)可迭代對(duì)象,配合for后接下來(lái)的操作以元組為基本單位,但是有一個(gè)有些致命的隱含問(wèn)題,如下兩個(gè)列表a,b 長(zhǎng)度不一致,zip后丟失了a的元素 3:


          In?[43]:?a=[1,2,3]??????????????????????????????????????????????????????????????

          In?[44]:?b=['a','b']????????????????????????????????????????????????????????????

          In?[45]:?for?i?in?zip(a,b):?
          ????...:?????print(i)?
          ????...:????????????????????????????????????????????????????????????????????????
          (1,?'a')
          (2,?'b')


          為了解決這個(gè)問(wèn)題,zip添加了一個(gè)布爾類型的參數(shù)?strict,這個(gè)變化也就是:


          3.10以前zip的原型:

          zip(*iterables)
          3.10以后增加一個(gè)布爾類型參數(shù)strict,默認(rèn)為False
          zip(*iterables,?strict=False)


          只有當(dāng)其為T(mén)rue時(shí),打包的可迭代對(duì)象長(zhǎng)度不一致時(shí)會(huì)拋異常;當(dāng)為False時(shí),與之前版本的zip完全相同,因此zip是完全向后兼容的。

          以上就是2個(gè)比較有用的更新。

          其他的一些變化還包括:
          瀏覽 65
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <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>
                  老鸭窝laoyawo在线播放 | 亚洲天堂综合网 | 美女自拍视频 | 男人天堂网在线观看 | 国产双飞视频 |