Python 3.10.0 (final) was released on the 4 October 2021. The Features for 3.10 are defined in What's New in Python 3.10.
mapping attribute that gives a
:class:`types.MappingProxyType` object wrapping the original
dictionary.
strict flag, used
to require that all the iterables have an equal length.
__builtins__ attribute which is used to look for
builtin symbols when a function is executed, instead of looking into
__globals__['__builtins__']. The attribute is initialized from
__globals__["__builtins__"] if it exists, else from the current builtins.
__module__, __name__, __qualname__, __doc__,
__annotations__) and have a new __wrapped__ attribute.
Moreover, static methods are now callable as regular functions.
simple name targets
defined by
Class and module objects now lazy-create empty annotations dicts on demand.
The annotations dicts are stored in the object’s __dict__ for
backwards compatibility. This improves the best practices for working
with __annotations__.
yield, yield from, await or named expressions
are now forbidden under from __future__ import annotations due to their side
effects.
super() and other expressions that might
alter the processing of symbol table as annotations are now rendered
effectless under from __future__ import annotations.
0 even though NaN values are not equal to one another.
This caused potentially quadratic runtime behavior due to excessive hash
collisions when creating dictionaries and sets containing multiple NaNs.
end_lineno and
end_offset attributes. They will be None if not determined.
Changes to built-in modules:
eventfd2 syscall on Linux.
IPPROTO_MPTCP.
IP_RECVTOS option to receive the type of service (ToS) or DSCP/ECN fields.
Notes