Python 3.9 was officially released on . This release was a significant milestone in the language's development, as it marked the transition to a more predictable 12-month release cycle , shifting away from the previous 18-month cadence. Python 3.9 Lifecycle & Key Dates
Almost instantly, the notifications began to trickle in, then flood. A developer in Berlin cheered because her type hinting just became ten lines shorter. A data scientist in New York refreshed his package manager, eager to try the new zoneinfo module that would finally handle time zones without the heavy external libraries. A student in Mumbai saw the new string methods and realized her homework wasn't going to be a nightmare of off-by-one errors.
The entire release cycle for Python 3.9 took place during the global pandemic. Despite this, the core development team managed to stick remarkably close to the original schedule, with only minor delays.
Python 3.9 has had a significant impact on the development community. Its new features and improvements have made Python an even more attractive choice for a wide range of applications, from web development and data science to artificial intelligence and automation.
Knowing the release date is useful, but knowing its support lifespan is critical for production systems. Python 3.9's official End of Life was October 5, 2025 (exactly 5 years after release). As of April 2026, Python 3.9 is past its EOL and no longer receives security patches, including critical security fixes.
The October 5, 2020 release introduced several significant features that are now standard in modern Python:
The reaction from the Python community was overwhelmingly positive. Developers took to social media, blogs, and forums to share their excitement, experiences, and tips on using Python 3.9. Many praised the new features, improved performance, and enhanced error messages.
| Milestone | Date | Significance | | :--- | :--- | :--- | | | June 4, 2019 | After Python 3.8.0b1, the master branch opens for 3.9 features. | | First Alpha (3.9.0a1) | November 19, 2019 | First preview. Not for production. Intended for testing new features and internal APIs. | | Last Alpha (3.9.0a6) | April 28, 2020 | Feature development is now complete. No new features will be added after this point. | | First Beta (3.9.0b1) | May 18, 2020 | Feature freeze. Focus shifts to bug fixes and stability. | | Last Beta (3.9.0b5) | July 20, 2020 | No new features or major bug fixes. | | First Release Candidate (3.9.0rc1) | August 10, 2020 | Code is considered complete. Final testing before release. | | Second Release Candidate (3.9.0rc2) | September 14, 2020 | Any critical showstopper bugs found in rc1 are fixed here. | | Final Release (3.9.0) | October 5, 2020 | Official, production-ready release. | | First Bugfix (3.9.1) | December 7, 2020 | First regular maintenance release. |