Инструкция по установке и настройке python 3
Содержание:
- This is the third maintenance release of Python 3.9
- And Now for Something Completely Different
- Major new features of the 3.8 series, compared to 3.7
- Шаг 2: Подготовьте вашу систему
- Major new features of the 3.9 series, compared to 3.8
- Major new features of the 3.8 series, compared to 3.7
- Major new features of the 3.9 series, compared to 3.8
- Major new features of the 3.9 series, compared to 3.8
- More resources
- Шаг 3: Собираем Python
- OpenPGP Public Keys
- Python 2.3
- Major new features of the 3.8 series, compared to 3.7
- Major new features of the 3.9 series, compared to 3.8
- And now for something completely different
- And now for something completely different
- Major new features of the 3.8 series, compared to 3.7
This is the third maintenance release of Python 3.9
NOTE: The release you’re looking at has been recalled due to unintentional breakage of ABI compatibility with C extensions built in Python 3.9.0 — 3.9.2. Details in bpo-43710. Please use Python 3.9.4 or newer instead.
Python 3.9.3 is an expedited release which includes a number of security fixes and is recommended to all users:
- bpo-43631: high-severity CVE-2021-3449 and CVE-2021-3450 were published for OpenSSL, it’s been upgraded to 1.1.1k in CI, and macOS and Windows installers.
- bpo-42988: CVE-2021-3426: Remove the getfile feature of the pydoc module which could be abused to read arbitrary files on the disk (directory traversal vulnerability). Moreover, even source code of Python modules can contain sensitive data like passwords. Vulnerability reported by David Schwörer.
- bpo-43285: ftplib no longer trusts the IP address value returned from the server in response to the PASV command by default. This prevents a malicious FTP server from using the response to probe IPv4 address and port combinations on the client network. Code that requires the former vulnerable behavior may set a trust_server_pasv_ipv4_address attribute on their ftplib.FTP instances to True to re-enable it.
- bpo-43439: Add audit hooks for gc.get_objects(), gc.get_referrers() and gc.get_referents(). Patch by Pablo Galindo.
And Now for Something Completely Different
trong>Interviewer (John Cleese): You know I really enjoy interviewing applicants for this management training course. (knock at door) Come in. (Stig enters) Ah. Come and sit down.
Stig (Graham Chapman): Thank you. (he sits)
Interviewer: (stares at him and starts writing) Would you mind just standing up again for one moment. (Stig stands up) Take a seat.
Stig: I’m sorry?
Interviewer: Take a seat. (Stig does so) Ah! (writes again) Good morning.
Stig: Good morning.
Interviewer: (writes) Tell me why did you say ‘good morning’ when you know perfectly well that it’s afternoon?
Stig: Well, well, you said ‘good morning’. Ha, ha.
Interviewer: (shakes head) Good afternoon.
Stig: Ah, good afternoon.
Interviewer: Oh dear. (writes again) Good evening.
Stig: …Goodbye?
Interviewer: Ha, ha. No. (rings small hand-bell) … Aren’t you going to ask me why I rang the bell? (rings bell again)
Stig: Er why did you ring the bell?
Interviewer: Why do you think I rang the bell? (shouts) Five, four, three, two, one, ZERO!
Stig: Well, I, I…
Interviewer: Too late! (singing) Goodniiight, ding-ding-ding-ding-ding.
Version | Operating System | Description | MD5 Sum | File Size | GPG |
---|---|---|---|---|---|
Gzipped source tarball | Source release | 798b9d3e866e1906f6e32203c4c560fa | 25640094 | SIG | |
XZ compressed source tarball | Source release | ecc29a7688f86e550d29dba2ee66cf80 | 19051972 | SIG | |
macOS 64-bit Intel installer | macOS | for macOS 10.9 and later | d714923985e0303b9e9b037e5f7af815 | 29950653 | SIG |
macOS 64-bit universal2 installer | macOS | for macOS 10.9 and later, including macOS 11 Big Sur on Apple Silicon (experimental) | 93a29856f5863d1b9c1a45c8823e034d | 38033506 | SIG |
Windows embeddable package (32-bit) | Windows | 5b9693f74979e86a9d463cf73bf0c2ab | 7599619 | SIG | |
Windows embeddable package (64-bit) | Windows | 89980d3e54160c10554b01f2b9f0a03b | 8448277 | SIG | |
Windows help file | Windows | 91482c82390caa62accfdacbcaabf618 | 6501645 | SIG | |
Windows installer (32-bit) | Windows | 90987973d91d4e2cddb86c4e0a54ba7e | 24931328 | SIG | |
Windows installer (64-bit) | Windows | Recommended | ac25cf79f710bf31601ed067ccd07deb | 26037888 | SIG |
Major new features of the 3.8 series, compared to 3.7
- PEP 572, Assignment expressions
- PEP 570, Positional-only arguments
- PEP 587, Python Initialization Configuration (improved embedding)
- PEP 590, Vectorcall: a fast calling protocol for CPython
- PEP 578, Runtime audit hooks
- PEP 574, Pickle protocol 5 with out-of-band data
- Typing-related: PEP 591 (Final qualifier), PEP 586 (Literal types), and PEP 589 (TypedDict)
- Parallel filesystem cache for compiled bytecode
- Debug builds share ABI as release builds
- f-strings support a handy specifier for debugging
- is now legal in blocks
- on Windows, the default event loop is now
- on macOS, the spawn start method is now used by default in
- can now use shared memory segments to avoid pickling costs between processes
- is merged back to CPython
- is now 40% faster
- now uses Protocol 4 by default, improving performance
There are many other interesting changes, please consult the «What’s New» page in the documentation for a full list.
Шаг 2: Подготовьте вашу систему
Существует несколько специфичных для дистрибутива шагов, связанных с получением Python с нуля. Суть каждого шага одинакова для всех дистрибутивов, но вам может понадобиться перевести ваш дистрибутив, если в нем не используется apt-get:
Первый шаг, который вам нужно сделать, выполняя такую операцию – это обновление системных пакетов на вашем компьютере перед началом. В Debian, это будет выглядеть следующим образом:
Shell
$ sudo apt-get update
$ sudo apt-get upgrade
1 2 |
$sudo apt-getupgrade |
Далее, нам нужно убедиться в том, что система содержит инструменты, необходимые для установки Python. Их очень много, и у вас в распоряжении уже могут иметься некоторые из них. Я отсортировал их в одной командной строке, но вы можете разбить список на короткие команды.
Shell
# Для apt-систем (таких как Debian, Ubuntu и Mint)
$ sudo apt-get install -y make liblzma-dev lzma build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev
# Для yum-систем (таких, как CentOS)
$ sudo yum -y groupinstall development
$ sudo yum -y install zlib-devel
1 2 3 4 5 6 |
# Для apt-систем (таких как Debian, Ubuntu и Mint) $sudo apt-getinstall-ymakeliblzma-dev lzma build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev $sudo yum-ygroupinstall development $sudo yum-yinstall zlib-devel |
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
- 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.
Major new features of the 3.8 series, compared to 3.7
- PEP 572, Assignment expressions
- PEP 570, Positional-only arguments
- PEP 587, Python Initialization Configuration (improved embedding)
- PEP 590, Vectorcall: a fast calling protocol for CPython
- PEP 578, Runtime audit hooks
- PEP 574, Pickle protocol 5 with out-of-band data
- Typing-related: PEP 591 (Final qualifier), PEP 586 (Literal types), and PEP 589 (TypedDict)
- Parallel filesystem cache for compiled bytecode
- Debug builds share ABI as release builds
- f-strings support a handy specifier for debugging
- is now legal in blocks
- on Windows, the default event loop is now
- on macOS, the spawn start method is now used by default in
- can now use shared memory segments to avoid pickling costs between processes
- is merged back to CPython
- is now 40% faster
- now uses Protocol 4 by default, improving performance
There are many other interesting changes, please consult the «What’s New» page in the documentation for a full list.
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
- 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.
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
- 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
- Online Documentation
- PEP 596, 3.9 Release Schedule
- Report bugs at https://bugs.python.org.
- Help fund Python and its community.
Version | Operating System | Description | MD5 Sum | File Size | GPG |
---|---|---|---|---|---|
Gzipped source tarball | Source release | cc8507b3799ed4d8baa7534cd8d5b35f | 25411523 | SIG | |
XZ compressed source tarball | Source release | 2a3dba5fc75b695c45cf1806156e1a97 | 18900304 | SIG | |
macOS 64-bit Intel installer | macOS | for macOS 10.9 and later | 2b974bfd787f941fb8f80b5b8084e569 | 29866341 | SIG |
macOS 64-bit universal2 installer | macOS | for macOS 10.9 and later, including macOS 11 Big Sur on Apple Silicon (experimental) | 9aa68872b9582c6c71151d5dd4f5ebca | 37648771 | SIG |
Windows embeddable package (32-bit) | Windows | b4bd8ec0891891158000c6844222014d | 7580762 | SIG | |
Windows embeddable package (64-bit) | Windows | 5c34eb7e79cfe8a92bf56b5168a459f4 | 8419530 | SIG | |
Windows help file | Windows | aaacfe224768b5e4aa7583c12af68fb0 | 8859759 | SIG | |
Windows installer (32-bit) | Windows | b790fdaff648f757bf0f233e4d05c053 | 27222976 | SIG | |
Windows installer (64-bit) | Windows | Recommended | ebc65aaa142b1d6de450ce241c50e61c | 28323440 | SIG |
Шаг 3: Собираем Python
Выполнив предварительные условия и получив файл tar, вы можете распаковать исходник в папку
Обратите внимание на то, что следующая команда создаст новую папку Python-3.6.5 под той, в которой вы в данный момент находитесь:. Shell
$ wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
$ tar xvf Python-3.6.5.tgz
$ cd Python-3.6.5
Shell
$ wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz
$ tar xvf Python-3.6.5.tgz
$ cd Python-3.6.5
1 2 3 |
$wget httpswww.python.orgftppython3.6.5Python-3.6.5.tgz $tar xvf Python-3.6.5.tgz $cdPython-3.6.5 |
Теперь вам нужно запустить инструмент ./configure для подготовке к построению Python:
Shell
$ ./configure —enable-optimizations —with-ensurepip=install
1 | $.configure—enable-optimizations—with-ensurepip=install |
Далее, мы скомпилируем Python при помощи make. Опция –j просто делит компиляцию на параллельные шаги для ускорения компиляции. Даже с параллельным компилированием, этот шаг может занять несколько минут:
Shell
$ make -j 8
1 | $make-j8 |
Далее, вам может понадобиться установить новую версию Python. Используем таргет altinstall, чтобы не перезаписать системную версию Python. Так как вы устанавливаете Python в /usr/bin, вам нужно запустить команду от имени администратора:
Shell
$ sudo make altinstall
1 | $sudo makealtinstall |
OpenPGP Public Keys
Source and binary executables are signed by the release manager or binary builder using their
OpenPGP key. Release files for currently supported releases are signed by the following:
- Pablo Galindo Salgado (3.10.x and 3.11.x source files and tags) (key id: 64E628F8D684696D)
- Steve Dower (Windows binaries) (key id: FC62 4643 4870 34E5)
- Łukasz Langa (3.8.x and 3.9.x source files and tags) (key id: B269 95E3 1025 0568)
- Ned Deily (macOS binaries, 3.7.x / 3.6.x source files and tags) (key ids: 2D34 7EA6 AA65 421D, FB99 2128 6F5E 1540, and Apple Developer ID DJ3H93M7VJ)
- Larry Hastings (3.5.x source files and tags) (key id: 3A5C A953 F73C 700D)
- Benjamin Peterson (2.7.z source files and tags) (key id: 04C3 67C2 18AD D4FF and A4135B38)
Release files for older releases which have now reached end-of-life may have been signed by one of the following:
- Anthony Baxter (key id: 0EDD C5F2 6A45 C816)
- Georg Brandl (key id: 0A5B 1018 3658 0288)
- Martin v. Löwis (key id: 6AF0 53F0 7D9D C8D2)
- Ronald Oussoren (key id: C9BE 28DE E6DF 025C)
- Barry Warsaw (key ids: 126E B563 A74B 06BF, D986 6941 EA5B BD71, and ED9D77D5)
You can import a person’s public keys from a public keyserver network server
you trust by running a command like:
or, in many cases, public keys can also be found
at keybase.io.
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:
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.)
Python 2.3
We are pleased to announce the release of Python 2.3 on
July 29, 2003. This is a final, stable release, and we recommend
Python users upgrade to this version.
Nineteen months in the making, Python 2.3 represents a commitment to
stability and improved performance, with a minimum of new language
features. Countless bugs and memory leaks have been fixed, many new
and updated modules have been added, and the new type/class system
introduced in Python 2.2 has been significantly improved. Python 2.3
can be up to 30% faster than Python 2.2.
Please see the separate bugs page for known
issues and the bug reporting procedure.
Download the release
Windows users should download the Windows installer, Python-2.3.exe, run
it and follow the friendly instructions on the screen to complete the
installation. Windows users may also be interested in Mark Hammond’s
win32all, a collection of Windows-specific extensions including
COM support and Pythonwin, an IDE built using Windows components.
All others should download Python-2.3.tgz, the
source archive. Unpack it with
«tar -zxvf Python-2.3.tgz». Change to the Python-2.3 directory
and run the «./configure», «make», «make install» commands to compile
and install Python.
Macintosh users can find binaries and source on
Jack Jansen’s
MacPython page.
Mac OS X users who have a C compiler (which comes with the
OS X
Developer Tools) can also build from the source tarball below.
IDLEFORK users should take
note: Idlefork has been re-merged back into the main Python
distribution and takes the place of the old IDLE release.
What’s New?
-
See the highlights of this release.
-
Andrew Kuchling’s What’s New
in Python 2.3 describes the most visible changes since Python 2.2 in more detail. -
A detailed list of the changes is in the release notes, or the Misc/NEWS file in
the source distribution. -
For the full list of changes, you can poke around in CVS.
-
The PSF’s press
release announcing 2.3.
Documentation
The documentation has been updated too:
-
Browse HTML on-line
- Download using HTTP.
The interim documentation for
new-style classes, last seen for Python 2.2.3, is still relevant
for Python 2.3. In addition, The Python 2.3 Method
Resolution Order is a nice paper by Michele Simionato that
explains the C3 MRO algorithm (new in Python 2.3) clearly. (Also
available as reStructured Text. Copied with
permission.)
Files, MD5 checksums, signatures, and sizes
595620a4769073a812e353597585c4e8 Python-2.3.tgz (8436880 bytes, signature) 5763d167f4ab3467455e4728ac5a03ac Python-2.3.exe (9380742 bytes, signature)
The signatures above were generated with
GnuPG using the release manager’s
(Barry Warsaw)
which
has a key id of ED9D77D5.
Major new features of the 3.8 series, compared to 3.7
- PEP 572, Assignment expressions
- PEP 570, Positional-only arguments
- PEP 587, Python Initialization Configuration (improved embedding)
- PEP 590, Vectorcall: a fast calling protocol for CPython
- PEP 578, Runtime audit hooks
- PEP 574, Pickle protocol 5 with out-of-band data
- Typing-related: PEP 591 (Final qualifier), PEP 586 (Literal types), and PEP 589 (TypedDict)
- Parallel filesystem cache for compiled bytecode
- Debug builds share ABI as release builds
- f-strings support a handy specifier for debugging
- is now legal in blocks
- on Windows, the default event loop is now
- on macOS, the spawn start method is now used by default in
- can now use shared memory segments to avoid pickling costs between processes
- is merged back to CPython
- is now 40% faster
- now uses Protocol 4 by default, improving performance
There are many other interesting changes, please consult the «What’s New» page in the documentation for a full list.
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
- 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.
And now for something completely different
mall>Cut to film of the lost world. Tropical South American vegetation. Our four explorers from Jungle Restaurant and Ken Russell’s Gardening Club sketches limp along exhaustedly.
Second Explorer: My God, Betty, we’re done for…
Third Explorer: We’ll never get out of here… we’re completely lost, lost. Even the natives have gone.
First Explorer: Goodbye Betty, Goodbye Farquarson. Goodbye Brian. It’s been a great expedition…
Third Explorer: All that’ll be left of us will be a map, a compass and a few feet of film, recording our last moments…
First Explorer: Wait a moment!
Fourth Explorer: What is it?
First Explorer: If we’re on film, there must be someone filming us.
Second Explorer: My God, Betty, you’re right!
They all look around, then gradually all notice the camera. They break out in smiles of relief, come towards the camera and greet the camera crew.
Third Explorer: Look! Great to see you!
First Explorer: What a stroke of luck!
Camera Crew: Hello! …
First Explorer: Wait a minute!
Fourth Explorer: What is it again?
First Explorer: If this is the crew who were filming us . .. who’s filming us now? Look!
Cut to another shot which indudes the first camera flew and yet another camera crew with all their equipment.
Version | Operating System | Description | MD5 Sum | File Size | GPG |
---|---|---|---|---|---|
Gzipped source tarball | Source release | ea132d6f449766623eee886966c7d41f | 24377280 | SIG | |
XZ compressed source tarball | Source release | 69e73c49eeb1a853cefd26d18c9d069d | 18233864 | SIG | |
macOS 64-bit installer | macOS | for OS X 10.9 and later | 68170127a953e7f12465c1798f0965b8 | 30464376 | SIG |
Windows help file | Windows | 4403f334f6c05175cc5edf03f9cde7b4 | 8531919 | SIG | |
Windows x86-64 embeddable zip file | Windows | for AMD64/EM64T/x64 | 5f95c5a93e2d8a5b077f406bc4dd96e7 | 8177848 | SIG |
Windows x86-64 executable installer | Windows | for AMD64/EM64T/x64 | 2acba3117582c5177cdd28b91bbe9ac9 | 28076528 | SIG |
Windows x86-64 web-based installer | Windows | for AMD64/EM64T/x64 | c9d599d3880dfbc08f394e4b7526bb9b | 1365864 | SIG |
Windows x86 embeddable zip file | Windows | 7b287a90b33c2a9be55fabc24a7febbb | 7312114 | SIG | |
Windows x86 executable installer | Windows | 02cd63bd5b31e642fc3d5f07b3a4862a | 26987416 | SIG | |
Windows x86 web-based installer | Windows | acb0620aea46edc358dee0020078f228 | 1328200 | SIG |
And now for something completely different
href=»http://www.montypython.net/scripts/galaxy.php»>Our universe itself keeps on expanding and expanding,
In all of the directions it can whiz;
As fast as it can go, at the speed of light, you know,
Twelve million miles a minute and that’s the fastest speed there is.
So remember, when you’re feeling very small and insecure,
How amazingly unlikely is your birth;
And pray that there’s intelligent life somewhere out in space,
‘Cause there’s bugger all down here on Earth!
Version | Operating System | Description | MD5 Sum | File Size | GPG |
---|---|---|---|---|---|
Gzipped source tarball | Source release | e2f52bcf531c8cc94732c0b6ff933ff0 | 24149103 | SIG | |
XZ compressed source tarball | Source release | 35b5a3d0254c1c59be9736373d429db7 | 18019640 | SIG | |
macOS 64-bit installer | macOS | for OS X 10.9 and later | 2f8a736eeb307a27f1998cfd07f22440 | 30238024 | SIG |
Windows help file | Windows | 3079d9cf19ac09d7b3e5eb3fb05581c4 | 8528031 | SIG | |
Windows x86-64 embeddable zip file | Windows | for AMD64/EM64T/x64 | 73bd7aab047b81f83e473efb5d5652a0 | 8168581 | SIG |
Windows x86-64 executable installer | Windows | for AMD64/EM64T/x64 | 0ba2e9ca29b719da6e0b81f7f33f08f6 | 27864320 | SIG |
Windows x86-64 web-based installer | Windows | for AMD64/EM64T/x64 | eeab52a08398a009c90189248ff43dac | 1364128 | SIG |
Windows x86 embeddable zip file | Windows | bc354669bffd81a4ca14f06817222e50 | 7305731 | SIG | |
Windows x86 executable installer | Windows | 959873b37b74c1508428596b7f9df151 | 26777232 | SIG | |
Windows x86 web-based installer | Windows | c813e6671f334a269e669d913b1f9b0d | 1328184 | SIG |
Major new features of the 3.8 series, compared to 3.7
- PEP 572, Assignment expressions
- PEP 570, Positional-only arguments
- PEP 587, Python Initialization Configuration (improved embedding)
- PEP 590, Vectorcall: a fast calling protocol for CPython
- PEP 578, Runtime audit hooks
- PEP 574, Pickle protocol 5 with out-of-band data
- Typing-related: PEP 591 (Final qualifier), PEP 586 (Literal types), and PEP 589 (TypedDict)
- Parallel filesystem cache for compiled bytecode
- Debug builds share ABI as release builds
- f-strings support a handy specifier for debugging
- is now legal in blocks
- on Windows, the default event loop is now
- on macOS, the spawn start method is now used by default in
- can now use shared memory segments to avoid pickling costs between processes
- is merged back to CPython
- is now 40% faster
- now uses Protocol 4 by default, improving performance
There are many other interesting changes, please consult the «What’s New» page in the documentation for a full list.