No release history is available yet.
What it is
Python is a high-level, general-purpose programming language designed to emphasize readability and concise expression. It is used for web applications and APIs, automation, data processing, scientific computing, machine learning, systems tooling, testing, education, and command-line programs. Its large standard library and package ecosystem make it practical across many domains, while its dynamic typing and interpreted execution model support rapid development. Python implementations commonly run on a virtual machine, although alternative implementations and native-compilation approaches exist.
History
Python originated as a successor to an earlier educational and systems-oriented language, with a focus on clear syntax, a comprehensive standard library, and developer productivity. It developed from a small scripting language into a widely adopted platform for server-side software, automation, research, and data-intensive work. A major language transition replaced a long-lived older language line with a modernized one that corrected several early design limitations but was intentionally not fully backward compatible. That transition lasted for many years because large codebases and dependencies needed porting. More recent development has concentrated on language ergonomics, type annotations, asynchronous programming, packaging improvements, security maintenance, and runtime performance.
Migration notes
Migration planning should begin by identifying the Python implementation, supported interpreter range, operating systems, dependency manager, packaging format, and deployment model in use. The most significant historical migration issue is code or dependencies that still assume the retired older language line; these can require source changes involving text and binary data handling, library interfaces, exception behavior, iteration, imports, and third-party packages. Even within the modern language line, projects can be constrained by syntax features, standard-library behavior, typing features, or dependencies that set different minimum and maximum interpreter versions. Native extensions can be especially difficult because they must be rebuilt for the target interpreter and platform and may depend on system libraries, compiler toolchains, or a particular application binary interface. Packaging is another common source of friction: applications may use isolated environments, traditional build configuration, newer standardized project metadata, editable installs, private indexes, lockfiles, or platform-specific wheels, and these approaches are not always interchangeable. Moving Python services between operating systems, CPU architectures, containers, or serverless platforms can expose assumptions about paths, shells, process behavior, locale settings, time zones, certificates, file permissions, and available operating-system packages. Dynamic imports, runtime monkey patching, generated code, plugin discovery, and optional dependencies can evade static analysis and make incomplete migrations appear successful until production paths execute. Strong migration plans therefore inventory direct and transitive dependencies, rebuild and test native components, run automated tests across the intended interpreter and platform matrix, validate packaging and deployment in clean environments, and use linting, type checking, and runtime observability to find compatibility issues. Migrating away from Python may also require replacing its ecosystem integrations rather than merely translating language syntax, particularly for data workflows, automation scripts, and framework-based applications.
Version support status
| Cycle | Status | Date |
|---|---|---|
| Python 3.14 | Supported | Support ends 1 October 2027 |
| Python 3.13 | Supported | Support ends 1 October 2026 |
| Python 3.12 | Supported | Support ends 2 April 2025 |
| Python 3.11 | Supported | Support ends 1 April 2024 |
| Python 3.10 | Supported | Support ends 5 April 2023 |
| Python 3.9 | End of life | EOL 31 October 2025 |
| Python 3.8 | End of life | EOL 7 October 2024 |
| Python 3.7 | End of life | EOL 27 June 2023 |
| Python 3.6 | End of life | EOL 23 December 2021 |
