This article explains the new features in Python 3.15, compared to 3.14.
For full details, see the changelog.
Prerelease users should be aware that this document is currently in draft form. It will be updated substantially as Python 3.15 moves towards release, so it’s worth checking back even after reading earlier versions.
'Container' object has no attribute 'area'. Did you mean: 'inner.area'?
For example, if the object has an attribute that itself exposes the requested name, the error message will suggest accessing it via that inner attribute:
The interpreter now provides more helpful suggestions in AttributeError exceptions when accessing an attribute on an object that does not exist, but a similar attribute is available through one of its members.
(Contributed by Pablo Galindo and László Kiss Kollár in gh-135953 and gh-138122 .)
See profiling.sampling for the complete documentation, including all available output formats, profiling modes, and configuration options.
Opcode-level profiling : Gather bytecode opcode information for instruction-level profiling ( --opcodes ). Shows which bytecode instructions are executing, including specializations from the adaptive interpreter.
Async-aware profiling : Profile async/await code with task-based stack reconstruction ( --async-aware ). See which coroutines are consuming time, with options to show only running tasks or all tasks including those waiting.
... continue reading