首頁  >  文章  >  後端開發  >  Python 3.10版本新增了哪些新功能?

Python 3.10版本新增了哪些新功能?

王林
王林轉載
2023-08-20 23:33:061046瀏覽

Python 3.10版本中新增了哪些新功能?

In this article, we will learn the new features in Python 3.10, compared to 3.9. Let’s see the features −

#Parenthesized context managers

現在支援使用括號來跨多行繼續使用上下文管理器。這樣可以以與先前的導入語句相似的方式,將長的上下文管理器集合格式化為多行。

User-Defined Type Guards

TypeGuard has been added to the typing module to annotate type guard functions and improve information provided to static type checkers during type narrowing.

Enhanced error messages

如果您在執行Python程式時遇到錯誤,錯誤訊息現在將更準確,並提供確切的錯誤訊息

SyntaxError

的中文翻譯為:

SyntaxError

在解析包含未閉合括號或方括號的程式碼時,解釋器現在會包含未閉合括號或方括號的位置,而不是顯示SyntaxError: unexpected EOF while parsing或指向錯誤的位置

SyntaxError exceptions raised by the interpreter will now highlight the full error range of the expression that constitutes the syntax error itself, instead of just where the problem is detected.

IndentationErrors

的翻譯為:

縮排錯誤

許多IndentationError異常現在提供了更多關於期望縮排的區塊類型的上下文資訊

精確的行號用於調試

More precise and reliable line numbers for debugging, profiling and coverage tools. Tracing events, with the correct line number, are generated for all lines of code executed and only for lines of code that are executed.

Structural Pattern Matching

#已經透過匹配語句和帶有關聯操作的模式的case語句添加了結構模式匹配。模式包括序列、映射、原始資料類型以及類別實例。模式匹配使程式能夠從複雜的資料類型中提取信息,根據資料的結構進行分支,並根據不同形式的資料應用特定的操作。

增強模組

以下模組增加了新功能、新方法等。

array

− The index() method of array.array now has optional start and stop parameters.

base64

− Added base64.b32hexencode() and base64.b32hexdecode() to support the Base32 Encoding with Extended Hex Alphabet.

bisect

− Added the possibility of providing a key function to the APIs in the bisect module.

contextlib

− 新增了一個contextlib.aclosing()上下文管理器,用於安全關閉非同步產生器和表示非同步釋放資源的物件。

distutils

− The distutils package is deprecated, to be removed in Python 3.12.

encodings

− The encodings.normalize_encoding() now ignores non-ASCII characters.###

以上是Python 3.10版本新增了哪些新功能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除