Дата выпуска: Oct. 2, 2023
Python версии 3.12
На заметку
Со списком нововведений вы можете ознакомиться на странице «Python 3.12» (англ.).

Кое-что из нового:
  • Подинтерпретаторы — PEP-698;
  • Поддержка вывода имен функций в трассировках профилировщика perf;
  • Очередные улучшения в сообщениях об ошибках: подсказки о возможных опечатках и забытых импортах;
  • В pathlib добавлены .walk(), .is_junction(), .splitroot();
  • В math добавлен .sumprod() (сумма произведений);
  • Для sqlite и uuid добавлены интефейсы командной строки;
  • Для typing добавлен @overridePEP-698;
  • Усовершенствование f-строк (PEP-701): вложенные кавычки, многострочность (с поддержкой комментариев);
  • Новый протокол буфера (PEP-701), специализированный метод __buffer__();

Внимание
Удалены устаревшие модули smtpd, distutils (последний все ещё доступен в setuptools; PEP-632), asynchat, asyncore, imp (заменён importlib). Удалены устаревшие элементы модуля unittest (в основном псевдонимы методов).

Оптимизация и ускорение


  • Добавлена экспериментальная поддержка двоичного оптимизатора BOLT (прирост быстродействия 1-5%);
  • Ускорение re.sub() и re.subn() в 2-3 раза при замене в строках, где используются ссылки на группы.

_
Предложения по улучшению (PEP)
Номер Название Тип Состояние
467 Мелкие улучшения API для двоичных последовательностей С Черн.
582 Локальная директория для пакетов Python С Откл.
620 Сокрытие деталей реализации от C API С Откл.
669 Низкозатратный мониторинг для CPython С Утв.
671 Синтаксис для поздно связываемых умолчательных аргументов функции С Черн.
674 Запрет использования макросов в качестве l-значений С Отл.
679 Дозволить скобки для assert С Черн.
683 Бессмертные объекты, использование условленного числа ссылок С Утв.
684 Поинтерпретаторная ГБИ (GIL) С Утв.
687 Изолирование модулей в стандартной библиотеке С Утв.
688 Сделать доступным из Python протокол буфера С Утв.
689 Полустабильный уровень C API С Фин.
690 Ленивые импорты С Откл.
692 Использование TypedDict для более точного типизирования **kwargs С Утв.
693 График выпуска Python 3.12 И Действ.
695 Синтаксис параметра для типа С Утв.
696 Умолчательные типы для TypeVarLikes С Черн.
697 C API для расширения непрозрачных типов С Фин.
698 Декоратор override для статического типизирования С Утв.
699 Убрать поле версии словаря, добавленное в PEP 509 С Утв.
701 Синтаксическая формализация f-строк С Утв.
702 Использование подсказок типов для маркировки устаревающей функциональности С Черн.
705 TypedMapping: подсказки типов для отображений с фиксированным набором ключей С Черн.
706 Фильтр для tarfile.extractall С Фин.
707 Упрощённая сигнатура для __exit__ и __aexit__ С Откл.
709 Встройка для компоновок С Утв.
713 Вызываемые модули С Откл.
720 Кросс-компиляция пакетов Python И Черн.
721 Использование tarfile.data_filter для извлечения исходников дистрибутива С Фин.
На заметку
У нас есть новостная группа в Telegram. Там же можно обсудить интересующие вопросы. Ссылка в самом низу страницы.