Python 3.8
Дата выпуска: Oct. 14, 2019
Python версии 3.8
На заметку
С полным списком изменений в версии вы можете ознакомиться на странице «Новое в Python 3.8» (англ.).
Из нового, помимо PEP, упомянутых ниже:
- PEP-570 — синтаксис для «только-позиционных» аргументов (
/
); PYTHONPYCACHEPREFIX
для указания места хранения байткода;- ABI (двоичный интерфейс приложения) стал единым для боевой и отладочной сборки CPython;
- Форматные строки теперь поддерживают нотацию с
=
; - continue теперь можно использовать в блоках finally;
- typed_ast влита в CPython.
- Добавлен модуль
importlib.metadata
, позволяющий получать метаинформацию о доступных пакетах; - В модуле
math
новые:prod()
,isqrt()
,dist()
,hypot()
. - В модуле
statistics
новые:fmean()
,geometric_mean()
,multimode()
,quantiles()
,NormalDist
. - Улучшения в
ast
,asyncio
,collections
,curses
,ctypes
,datetime
,functools
,gc
,gettext
,gzip
,inspect
,io
,mmap
,multiprocessing
,os
,pathlib
,shlex
,socket
,ssl
,sys
,threading
,time
,unicodedata
,unittest
,weakref
,xml
, - SyntaxWarning теперь предупреждает о неверном использовании
is
вместо==
, а также умеет предполагать потерю запятой между кортежами, объявленными в списке.
Оптимизация и ускорение
- Модуль
pickle
ускорился за счёт использования протокола 4 по умолчанию; - Модуль
multiprocessing
теперь умеет использовать сегменты разделяемой памяти, чем экономит на консервирование при передаче данных между процессами; - Инструкция
LOAD_GLOBAL
теперь использует кеш на уровне кодов операций, поэтому стала работать быстрее на 40%; - Адресация атрибутов в именованных кортежах (
namedtuple
) ускорена по сравнению с 3.7; - Списки теперь занимают в среднем на 12% меньше места, когда конструируются из итерируемых объектов известного размера (c __len__());
- Вдвое ускорена запись переменных класса;
- На 20-50% ускорен вызов простых встроенных функций, за счёт экономии на конвертации их аргументов;
- Ускорения и оптимизации в
pickle
,subprocess
,shutil
,operator.itemgetter
(33%),uuid
.
Предложения по улучшению (PEP)
На заметку
Зарегистрированные пользователи могут добавлять Книги.