Every release of Python includes new, improved, and deprecated features, and Python 3.9 is no different.
Above all, Python is an easy to learn, powerful programming language. It has efficient high-level data structures and a simple but effective approach to object-oriented programming.
Python 3.9 brings a proper Time Zone support. The biggest challenge to working with time zones in plain Python has been that you’ve had to implement time zones rules yourself. A datetime supports setting time zones, but only UTC is immediately available. The zoneinfo module brings support for the IANA time zone database to the standard library. It adds zoneinfo.ZoneInfo, a concrete datetime.tzinfo implementation backed by the system’s time zone data.
One of the coolest features of Python 3.9 is one that you won’t notice in your daily coding life. A fundamental component of the Python interpreter is the parser. In the latest version, the parser has been reimplemented. Python 3.9 uses a new parser, based on PEG instead of LL.
In addition, Python 3.5 is no longer supported. There will be no more bug fixes or security patches for the 3.5 series, and Python 3.5.10 is the last release. The Python core development community recommends that all remaining Python 3.5 users should upgrade to the latest version.
More details on the Python 3.9 improvements via the what’s new documentation.
If you want to try out any of the cool new features you’ll need to use Python 3.9. It’s possible to install the latest version side by side with your current version of Python.