Release Date: Oct. 5, 2020
Python Online
Python is a general-purpose, versatile, and powerful programming language. It’s a great first language because it's concise and easy to read. Whatever you want to do, Python can do it. From web development to machine learning to data science, Python is the language for you. This site may not work in your browser. Please use a supported browser.
This is the stable release of Python 3.9.0
Python 3.9.0 is the newest major release of the Python programming language, and it contains many new features and optimizations.
Installer news
This is the first version of Python to default to the 64-bit installer on Windows. The installer now also actively disallows installation on Windows 7. Python 3.9 is incompatible with this unsupported version of Windows.
Major new features of the 3.9 series, compared to 3.8
Some of the new major new features and changes in Python 3.9 are:
- PEP 573, Module State Access from C Extension Methods
- PEP 584, Union Operators in
dict
- PEP 585, Type Hinting Generics In Standard Collections
- PEP 593, Flexible function and variable annotations
- PEP 602, Python adopts a stable annual release cadence
- PEP 614, Relaxing Grammar Restrictions On Decorators
- PEP 615, Support for the IANA Time Zone Database in the Standard Library
- PEP 616, String methods to remove prefixes and suffixes
- PEP 617, New PEG parser for CPython
- BPO 38379, garbage collection does not block on resurrected objects;
- BPO 38692, os.pidfd_open added that allows process management without races and signals;
- BPO 39926, Unicode support updated to version 13.0.0;
- BPO 1635741, when Python is initialized multiple times in the same process, it does not leak memory anymore;
- A number of Python builtins (range, tuple, set, frozenset, list, dict) are now sped up using PEP 590 vectorcall;
- A number of Python modules (_abc, audioop, _bz2, _codecs, _contextvars, _crypt, _functools, _json, _locale, operator, resource, time, _weakref) now use multiphase initialization as defined by PEP 489;
- A number of standard library modules (audioop, ast, grp, _hashlib, pwd, _posixsubprocess, random, select, struct, termios, zlib) are now using the stable ABI defined by PEP 384.
You can find a more comprehensive list in this release's 'What's New' document.
More resources
- PEP 596, 3.9 Release Schedule
- Report bugs at https://bugs.python.org.
- Help fund Python and its community.
And now for something completely different
Wapcaplet: (John Cleese) Welcome! Do sit down. My name's Wapcaplet, Adrian Wapcaplet.
Mr. Simpson: how'd'y'do.
Wapcaplet: Now, Mr. Simpson... Now, I understand you want us to advertise your washing powder.
S: String.
W: String, washing powder, what's the difference. We can sell anything.
S: Good. Well I have this large quantity of string, a hundred and twenty-two thousand miles of it to be exact, which I inherited, and I thought if I advertised it...
W: Of course! A national campaign. Useful stuff, string, no trouble there.
S: Ah, but there's a snag, you see. Due to bad planning, the hundred and twenty-two thousand miles is in three inch lengths. So it's not very useful.
W: Well, that's our selling point! 'SIMPSON'S INDIVIDUAL STRINGETTES!'
S: What?
W:'THE NOW STRING! READY CUT, EASY TO HANDLE, SIMPSON'S INDIVIDUAL EMPEROR STRINGETTES - JUST THE RIGHT LENGTH!'
S: For what?
W:'A MILLION HOUSEHOLD USES!'
S: Such as?
W: Uhmm...Tying up very small parcels, attatching notes to pigeons' legs, uh, destroying household pests...
S: Destroying household pests?! How?
W: Well, if they're bigger than a mouse, you can strangle them with it, and if they're smaller than, you flog them to death with it!
S: Well surely!....
W:'DESTROY NINETY-NINE PERCENT OF KNOWN HOUSEHOLD PESTS WITH PRE-SLICED, RUSTPROOF, EASY-TO-HANDLE, LOW CALORIE SIMPSON'S INDIVIDUAL EMPEROR STRINGETTES, FREE FROM ARTIFICIAL COLORING, AS USED IN HOSPITALS!'
Version | Operating System | Description | MD5 Sum | File Size | GPG |
---|---|---|---|---|---|
Gzipped source tarball | Source release | e19e75ec81dd04de27797bf3f9d918fd | 26724009 | SIG | |
XZ compressed source tarball | Source release | 6ebfe157f6e88d9eabfbaf3fa92129f6 | 18866140 | SIG | |
macOS 64-bit installer | Mac OS X | for OS X 10.9 and later | 16ca86fa3467e75bade26b8a9703c27f | 31132316 | SIG |
Windows help file | Windows | 9ea6fc676f0fa3b95af3c5b3400120d6 | 8757017 | SIG | |
Windows x86-64 embeddable zip file | Windows | for AMD64/EM64T/x64 | 60d0d94337ef657c2cca1d3d9a6dd94b | 8387074 | SIG |
Windows x86-64 executable installer | Windows | for AMD64/EM64T/x64 | b61a33dc28f13b561452f3089c87eb63 | 28158664 | SIG |
Windows x86-64 web-based installer | Windows | for AMD64/EM64T/x64 | 733df85afb160482c5636ca09b89c4c8 | 1364352 | SIG |
Windows x86 embeddable zip file | Windows | d81fc534080e10bb4172ad7ae3da5247 | 7553872 | SIG | |
Windows x86 executable installer | Windows | 4a2812db8ab9f2e522c96c7728cfcccb | 27066912 | SIG | |
Windows x86 web-based installer | Windows | cdbfa799e6760c13d06d0c2374110aa3 | 1327384 | SIG |
Python is a programming language.
Python can be used on a server to create web applications.
Start learning Python now »Learning by Examples
With our 'Try it Yourself' editor, you can edit Python code and view the result.
Example
Try it Yourself »Click on the 'Try it Yourself' button to see how it works.
Python File Handling
In our File Handling section you will learn how to open, read, write, and delete files.
Python Database Handling
In our database section you will learn how to access and work with MySQL and MongoDB databases:
Python Exercises
Python Examples
Learn by examples! This tutorial supplements all explanations with clarifying examples.
Python Programming
Python Quiz
Test your Python skills with a quiz.
Python Reference
Python Snake
You will also find complete function and method references:
Download Python
Download Python from the official Python web site: https://python.org
Python.org Download
Kickstart your career
Python For Loop With Index
Get certified by completing the course
Get certified