Looking for a specific release?
Python releases by version number:
All Python releases are Open Source. Historically, most, but not all, Python releases have also been GPL-compatible. The Licenses page details GPL-compatibility and Terms and Conditions.
For most Unix systems, you must download and compile the source code. The same source code archive can also be used to build the Windows and Mac versions, and is the starting point for ports to all other platforms.
This site hosts the "traditional" implementation of Python (nicknamed CPython). A number of alternative implementations are available as well.
Python was created in the early 1990s by Guido van Rossum at Stichting Mathematisch Centrum in the Netherlands as a successor of a language called ABC. Guido remains Python’s principal author, although it includes many contributions from others.
Information about specific ports, and developer info
OpenPGP Public Keys
Source and binary executables are signed by the release manager using their OpenPGP key. The release managers and binary builders since Python 2.3 have been:
- Anthony Baxter (key id: 6A45C816)
- Georg Brandl (key id: 36580288)
- Ned Deily (key ids: AA65421D, 6F5E1540, and Apple Developer ID DJ3H93M7VJ)
- Steve Dower (key id: 487034E5 )
- Larry Hastings (key id: F73C700D)
- Martin v. Löwis (key id: 7D9DC8D2)
- Ronald Oussoren (key id: E6DF025C)
- Benjamin Peterson (key id: 18ADD4FF and A4135B38)
- Barry Warsaw (key ids: A74B06BF, EA5BBD71, and ED9D77D5)
Note: Barry's key id A74B06BF is used to sign the Python 2.6.8 and 2.6.9 releases. His key id EA5BBD71 was used to sign all other Python 2.6 and 3.0 releases. His key id ED9D77D5 is a v3 key and was used to sign older releases; because it is an old MD5 key and rejected by more recent implementations, ED9D77D5 is no longer included in the public key file.
You can import the release manager public keys by either downloading the public key file from here and then running
gpg --import pubkeys.txt
or by grabbing the individual keys directly from the keyserver network by running this command:
gpg --recv-keys 6A45C816 36580288 7D9DC8D2 18ADD4FF A4135B38 A74B06BF EA5BBD71 E6DF025C AA65421D 6F5E1540 F73C700D 487034E5
On the version-specific download pages, you should see a link to both the downloadable file and a detached signature file. To verify the authenticity of the download, grab both files and then run this command:
gpg --verify Python-3.6.2.tgz.asc
Note that you must use the name of the signature file, and you should use the one that's appropriate to the download you're verifying.
- (These instructions are geared to GnuPG and Unix command-line users. Contributions of instructions for other platforms and OpenPGP applications are welcome.)
Other Useful Items
- Looking for 3rd party Python modules? The Package Index has many of them.
- You can view the standard documentation online, or you can download it in HTML, PostScript, PDF and other formats. See the main Documentation page.
- Information on tools for unpacking archive files provided on python.org is available.
- Tip: even if you download a ready-made binary for your platform, it makes sense to also download the source. This lets you browse the standard library (the subdirectory Lib) and the standard collections of demos (Demo) and tools (Tools) that come with it. There's a lot you can learn from the source!
- There is also a collection of Emacs packages that the Emacsing Pythoneer might find useful. This includes major modes for editing Python, C, C++, Java, etc., Python debugger interfaces and more. Most packages are compatible with Emacs and XEmacs.
Want to contribute?
Want to contribute? See the Python Developer's Guide to learn about how Python development is managed.