Allgemein

[$] Inspecting and modifying Python types during type checking

[$] Inspecting and modifying Python types during type checking

Python has a

unique approach to static typing
. Python programs can contain type
annotations, and even access those annotations at run time, but the annotations
aren’t evaluated by default. Instead, it is up to external programs to ascribe
meaning to those annotations. The annotations themselves can be arbitrary Python
expressions, but in practice usually involve using helpers from the built-in

typing
module, the meanings of which external type-checkers mostly
agree upon. Yet the type system implicitly defined by the typing module
and common type-checkers is insufficiently powerful to model all of the kinds of
dynamic metaprogramming found in real-world Python programs.
PEP 827 (“Type Manipulation”)
aims to add additional
capabilities to Python’s type system to fix this, but
discussion
of the PEP has been of mixed sentiment.

KI-Assistent
Kontext geladen: [$] Inspecting and modifying Python types during type checki