成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python 3.8新功能盤點:更快,更簡潔,更一致,更現代化

開發 后端
Python 3.8是Python這個流行語言的最新版本,適用于從自動化腳本編寫、機器學習到Web開發的所有內容。現在可以獲得官方測試版,Python 3.8帶來了許多靈活的語法更改,內存共享,更高效的序列化和反序列化,修改后的詞典等等。
[[268625]]

 

從功能強大的新任務語法到底層大更新,Python 3.8邁向更現代的Python代碼庫。

3.8是Python這個流行語言的***版本,適用于從自動化腳本編寫、機器學習到Web開發的所有內容。現在可以獲得官方測試版,Python 3.8帶來了許多靈活的語法更改,內存共享,更高效的序列化和反序列化,修改后的詞典等等。

當然,Python 3.8也***了各種性能改進。總體結果是讓Python更快,更簡潔,更一致,更現代化。以下是Python 3.8中***,最重要的內容。

賦值表達式

Python 3.8中最明顯的變化是賦值表達式,它使用了酷似海象的運算符(:=)。賦值表達式允許在表達式的上下文中將值賦給變量,甚至是尚不存在的變量,而不是作為獨立語句。

  1. while (line := file.readline()) != "end"
  2.  print(chunk) 

在此示例中,如果變量行不存在,則創建變量行,然后從file.readline()分配值。然后檢查行以查看它是否等于“結束”。如果不是,則讀取下一行,存儲在行中,測試,等等。

賦值表達式遵循Python中可理解的簡潔性的傳統,包括列表推導。在這里,我們的想法是減少一些易于出現在某些Python編程模式中的繁瑣樣板。例如,上面的代碼片段通常需要多于兩行代碼才能表達。

強制某些參數僅為位置

函數定義的新語法,僅位置參數,允許開發人員強制某些參數僅為位置。這消除了關于函數定義中哪些參數是位置的以及哪些是關鍵字參數的任何歧義。

僅限位置參數可以定義場景,例如,函數接受任何關鍵字參數但也可以接受一個或多個位置。 Python內置函數通常就是這種情況,因此為Python開發人員提供了一種方法,可以增強語言的一致性。

Python文檔中的一個例子:

  1. def pow(x, y, z=None, /): 
  2.  r = x**y 
  3.  if z is not None: 
  4.  r %= z 
  5.  return r 

/將位置與關鍵字參數分開; 在這個例子中,所有的參數都是位置的。在以前的Python版本中,z將被視為關鍵字參數。 給定上述函數定義,pow(2,10)和pow(2,10,5)是有效調用,但pow(2,10,z = 5)不是。

F字符串調試支持

f-string格式提供了一種方便(且性能更高)的方式來在同一表達式中打印文本和計算值或變量:

  1. x = 3  
  2. print(f'{x+1}'

這將打印4。

在f字符串表達式的末尾添加=會打印f-string表達式本身的文本,后跟值:

  1. x = 3 
  2. print (f'{x+1=}'

這將打印x + 1 = 4。

多處理模塊共享內存

使用Python 3.8,多處理模塊現在提供了一個SharedMemory類,允許在不同的Python進程之間創建和共享內存區域。

在以前的Python版本中,只能通過將數據寫入文件,通過網絡套接字發送或使用Python的pickle模塊對其進行序列化來在進程之間共享數據。共享內存為在進程之間傳遞數據提供了更快的路徑,使Python能夠更有效地使用多個處理器和處理器內核。

共享內存段可以分配為字節的原始區域,或者它們可以使用不可變的類似列表的對象,這些對象存儲Python對象的一小部分 - 數字類型,字符串,字節對象和None對象。

打字模塊的改進

Python是動態類型的,但支持通過輸入模塊使用類型提示,以允許第三方工具驗證Python程序。 Python 3.8為鍵入添加了新元素,以便更加可靠地進行檢查:

  • final decorator 和Final type annotation表明decorated/annotated 的對象不應在任何位置被覆蓋,子類化或重新分配。
  • Literal類型將表達式限制為特定值或值列表,不一定是相同類型。
  • TypedDict類型允許創建字典,其中與某些鍵關聯的值僅限于一個或多個特定類型。 請注意,這些限制僅限于在編譯時可以確定的內容,而不是在運行時。

新版本的pickle協議

Python的pickle模塊提供了一種序列化和反序列化Python數據結構的方法,例如,允許將字典原樣保存到文件中并在以后重新加載。不同版本的Python支持不同級別的pickle協議,更新版本支持更廣泛的功能和更高效的序列化。

使用Python 3.8引入的pickle第5版提供了一種新方法,來pickle實現Python緩沖區協議的對象,例如字節,內存視圖或NumPy數組。新的pickle減少了必須為這些對象制作的內存副本數量。

像NumPy和Apache Arrow這樣的外部庫在他們的Python綁定中支持新的pickle協議。新的pickle也可以作為PyPI的Python 3.6和Python 3.7的附件提供。

可逆詞典

Python中的字典完全用Python 3.6重寫,使用PyPy項目提供的新實現。除了更快更緊湊外,詞典現在還具有其元素的固有順序;它們是在添加時訂購的,就像列表一樣。 Python 3.8允許在字典上使用reversed()。

性能改進

  • 許多內置方法和函數已經加速了20%到50%,因為其中許多方法和函數不必要地轉換傳遞給它們的參數。
  • 新的操作碼緩存可以加速解釋器中的某些指令。但是,目前唯一實現的加速是針對LOAD_GLOBAL操作碼,現在快40%。計劃對更高版本的Python進行類似的優化。
  • 文件復制操作(例如shutil.copyfile()和shutil.copytree())現在使用特定于平臺的調用和其他優化來加速操作。
  • 由于優化利用列表構造函數對象的長度(如果事先已知),現在新創建的列表現在平均比以前小12%。
  • 在Python 3.8中,在新式類(例如,類A(對象))上寫入類變量要快得多。
  • operator.itemgetter()和collections.namedtuple()也有新的速度優化。

Python C API和CPython改進

在Python的***版本中,主要的工作是重構CPython中使用的C API,這是用C編寫的Python的參考實現。到目前為止,這項工作只產生了增量變化,但它們正在加起來:

  • 用于Python初始化配置的新C API允許對Python的初始化例程進行更嚴格的控制和更詳細的反饋。 這樣可以更輕松地將Python運行時嵌入到應用程序中,并以編程方式將啟動參數傳遞給Python。 這個新API還旨在確保所有Python的配置控件都具有單一,一致的主頁,以便將來更改(如Python的新UTF-8模式)更容易插入。
  • 另一個用于CPython的新C API,即“vectorcall”調用協議,允許更快地調用內部Python方法,而無需創建臨時對象來處理調用。API仍然不穩定,但已暫時可用。 計劃是從Python 3.9開始最終確定它。
  • Python運行時審計掛鉤在Python運行時中提供了兩個API,用于掛鉤事件并使它們可以觀察到外部工具,如測試框架或日志記錄和審計系統。 
責任編輯:龐桂玉 來源: 今日頭條
相關推薦

2013-03-01 09:17:20

Windows 8

2025-04-29 02:22:00

Python技巧CLI

2024-03-27 00:00:10

勒索軟件攻擊勒索軟件安全

2021-01-31 08:00:48

Windows 10Windows操作系統

2011-07-19 10:18:00

錢伯斯思科裁員

2015-09-08 10:48:55

UU安全

2023-10-12 10:11:19

2015-08-05 15:53:35

power星環

2009-12-30 10:46:01

Ubuntu目標

2014-07-18 15:15:50

交換機華為

2011-06-15 09:53:05

思杰虛擬化

2015-07-02 14:21:04

2024-11-11 17:00:27

字典壓縮Python代碼

2015-07-21 17:18:19

用友iUAP

2025-05-08 08:18:41

2021-01-06 08:05:47

Chrome瀏覽器

2025-04-29 10:04:41

JavaScripMap代碼

2011-05-12 10:48:49

CSS清理浮動

2018-11-30 10:05:36

微軟Office圖標
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 免费成人高清在线视频 | 欧美成人一级视频 | 国产精品久久久 | 国产精品视频免费观看 | 国产精品一区二区视频 | 日韩一区二区在线免费观看 | 免费毛片网站在线观看 | 日韩在线一区二区 | 久久久妇女国产精品影视 | 国产日韩欧美激情 | 亚洲精品一区二区 | 亚洲天堂成人在线视频 | 国产午夜精品一区二区三区 | 亚洲精品一区二区三区 | 91在线精品视频 | 日本特黄a级高清免费大片 特黄色一级毛片 | 一级做a | 亚洲精品一区二区久 | .国产精品成人自产拍在线观看6 | 亚洲成人一区二区 | 三级黄色片在线播放 | 欧美性网| 久久久久国产一级毛片 | 国产一区二区成人 | 色五月激情五月 | 在线视频91 | 拍拍无遮挡人做人爱视频免费观看 | 亚洲视频在线观看 | 久久亚洲一区二区三区四区 | 中文字幕在线一区二区三区 | 日韩三级一区 | 国产日韩视频在线 | 中文字幕av高清 | 久久一二区 | 国产一区二区三区四区五区3d | 天天插日日操 | 久久久一区二区三区四区 | 国产91综合一区在线观看 | 男人天堂久久 | 2019天天干夜夜操 | 国产在线播放av |