偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

關于Python3.9,你不可不知的4個新特性

開發(fā) 后端
以前Python使用 LL(1) 解析器,從Python 3.9 開始,將使用 PEG 解析器,官方認為,這個更改會使得他們更加方便地構建新功能。

1. 詞典聯(lián)合運算符

這是我最喜歡的功能之一,語法非常優(yōu)美。

在Python3.9,如果你有兩個詞典,現(xiàn)在可以用這些運算符進行合并和更新。

合并運算符 "|":

還有update運算符|=,它會更新原始字典:

  1. a = {1: 'a', 2: 'b', 3: 'c'} 
  2. b = {4: 'd', 5: 'e'} 
  3. a |= b 
  4. print(a) 
  5. {1: 'a', 2: 'b', 3: 'c', 4: 'd', 5: 'e'} 

如果我們的詞典共享一個key,那么將使用第二個詞典中的value:

  1. a = {1: 'a', 2: 'b', 3: 'c', 6: 'in both'} 
  2. b = {4: 'd', 5: 'e', 6: 'but different'} 
  3. print(a | b) 
  4. {1: 'a', 2: 'b', 3: 'c', 6: 'but different', 4: 'd', 5: 'e'} 

使用可迭代對象進行字典更新

|=操作符的另一個很酷的特性是能夠使用可迭代對象(例如列表或生成器)使用新的鍵值對更新字典:

  1. a = {'a': 'one', 'b': 'two'} 
  2. b = ((i, i**2) for i in range(3)) 
  3. a |= b 
  4. print(a) 
  5. {'a': 'one', 'b': 'two', 0: 0, 1: 1, 2: 4} 

當然,如果你用|這樣做,則會得到TypeError,因為它只能用于dict類型之間的聯(lián)合。

2. 字符串方法

removeprefix()和removesuffix()

  • str.removeprefix(substring: string) 是一個方法,接收一個substring參數(shù),顧名思義,它將刪除字符串對應的substring前綴,如果沒有對應的前綴,返回原字符串。
  • str.removesuffix(substring: string) 是一個方法,接收一個substring參數(shù),它將刪除字符串的對應substring后綴,如果沒有對應的后綴,返回原字符串。

當然,兩個函數(shù)執(zhí)行你可以通過使用string[len(prefix):]前綴和string[:-len(suffix)]后綴來實現(xiàn)。

這些是非常簡單的操作,因此也是非常簡單的功能,考慮到你可能經常執(zhí)行這些操作,Python3.9 提供的這兩個內置函數(shù)應該能讓你非常爽。

3. 新的數(shù)學函數(shù)

Python 3.9 的數(shù)學模塊進行了不少的優(yōu)化并添加了許多新功能。

比如以前gcd計算最大公因數(shù)的函數(shù)只能應用于2個數(shù)字,這就很蛋疼,我們必須使用 math.gcd(80, math.gcd(64, 152))來處理大于2個數(shù)字的情況。

現(xiàn)在 gcd 允許計算任意數(shù)量的數(shù)字。

  1. import math 
  2.  
  3. # Greatest common divisor 
  4. math.gcd(80, 64, 152) 
  5. # 8 

Math模塊中,第一個新增的功能是:

  1. # 最小公倍數(shù) 
  2. math.lcm(4, 8, 5) 
  3. # 40 

用于計算最小公倍數(shù):math.lcm,與gcd一樣,它允許可變數(shù)量的參數(shù)。

4. 新的解析器—PEG

這一個更改你可能看不見、摸不著,但它可能改變Python的未來。

以前Python使用 LL(1) 解析器,從Python 3.9 開始,將使用 PEG 解析器,官方認為,這個更改會使得他們更加方便地構建新功能。

因此,請期待Python 3.10,Python團隊或許能給我們帶來更多的驚喜!

 

責任編輯:趙寧寧 來源: Python實用寶典
相關推薦

2024-03-21 08:57:39

語言軟件開發(fā)

2021-01-28 10:17:54

人工智能AI機器學習

2020-01-17 06:12:10

物聯(lián)網IOT技術

2011-04-25 09:45:09

C#委托

2014-06-20 14:35:48

浪潮數(shù)據(jù)

2015-05-21 10:03:04

應用標題ASO

2023-07-06 14:08:54

ChatGPTLLM大型語言模型

2015-07-21 05:55:12

2010-06-11 14:46:38

可路由協(xié)議

2024-09-23 21:05:45

2025-01-03 17:10:54

2017-11-30 12:23:55

IO性能RAID

2023-11-13 14:19:57

Golang編程語言

2023-09-20 09:00:00

2023-09-22 12:14:33

2021-08-12 16:02:22

Jupyter NotPython命令

2022-02-16 08:01:45

網絡安全趨勢

2020-11-30 13:12:04

Linux文本命令

2015-01-15 09:34:28

2015-06-10 10:56:50

iOS開發(fā)技巧
點贊
收藏

51CTO技術棧公眾號