If you read tutorials from 2010, they might mention Python 2. Python 2 reached its "End of Life" in January 2020. It no longer receives security updates, and the syntax is slightly different from modern Python.
So, you’ve decided to learn Python or start a new project. You head to the official Python website, click "Downloads," and suddenly you’re staring at a list of numbers: 3.12, 3.11, 3.10... and wait, what is Python 2.7 doing there? which version of python should i download
Regardless of which version you download, always create isolated environments for each project: If you read tutorials from 2010, they might mention Python 2
| Version | Status | Release Date | End of Life | Recommendation | | :--- | :--- | :--- | :--- | :--- | | | End-of-Life (EOL) | July 2010 | Jan 1, 2020 | Do not use | | Python 3.7 | EOL | June 2018 | June 2023 | Do not use | | Python 3.8 – 3.11 | Security fixes only | Varies | Oct 2024 – Oct 2026 | Acceptable for legacy projects | | Python 3.12 | Stable / Active | Oct 2023 | Oct 2028 | Recommended | | Python 3.13+ | Pre-release / Beta | TBD | TBD | Not recommended for production | So, you’ve decided to learn Python or start a new project
Use the new Python install manager (available at python.org ) to manage multiple versions easily.