Frog Proger 10 мая 2024

🐍🆕 Змея сбросила старую кожу: что нового в Python 3.13

Версия 3.13 принесла ряд важных нововведений, нацеленных на повышение скорости выполнения кода, улучшение читаемости и новые возможности для интерактивной работы. Вот главные изменения, которые должен знать каждый Python-разработчик.
🐍🆕 Змея сбросила старую кожу: что нового в Python 3.13
Этот материал взят из нашей субботней email-рассылки, посвященной Python. Подпишитесь, чтобы быть в числе первых, кто получит дайджест.

Новые фичи направлены на повышение производительности, улучшение читаемости кода и дополнительные возможности для работы с интерактивной оболочкой. Вот основные нововведения:

Улучшенный интерактивный интерпретатор REPL:

  • Теперь поддерживает подсветку промптов, многострочное редактирование с сохранением истории, интерактивный просмотр справки по F1, навигацию по истории с помощью F2, режим вставки по F3.
  • Цвета можно отключить через переменные окружения PYTHON_COLORS и NO_COLOR.
  • Команды help, exit, quit теперь можно вводить без скобок.
  • Появилась автоматическая расстановка отступов.
  • Реализована корректная обработка вставки кода через буфер обмена, без необходимости вводить две пустые строки для разделения блоков.
  • Добавлена поддержка истории на уровне блоков кода, а не отдельных строк, что позволяет легко редактировать и перезапускать целые блоки.

В полной мере новые фичи REPL пока что доступны только на macOS и Unix-подобных системах. Подробнее обо всех возможностях обновленного REPL – в этой статье.

REPL теперь поддерживает блоки кода
REPL теперь поддерживает блоки кода
🐍 Библиотека питониста
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека питониста»
🐍💼 Библиотека собеса по Python
Подтянуть свои знания по Python вы можете на нашем телеграм-канале «Библиотека собеса по Python»
🧩🐍 Библиотека задач по Python
Интересные задачи по Python для практики можно найти на нашем телеграм-канале «Библиотека задач по Python»

Улучшенные сообщения об ошибках:

  • Трассировки ошибок по умолчанию теперь цветные, настройки управляются в PYTHON_COLORS.
  • Если есть скрипт с таким же именем, что и модуль, выдается подсказка о переименовании.
  • Если задан неправильный ключевой аргумент функции, предлагается возможная правильная версия.

Новые возможности аннотации типов:

  • Параметры типов (TypeVar, ParamSpec, TypeVarTuple) теперь поддерживают значения по умолчанию.
  • Добавлен TypeIs для более узкого определения типов.
  • Добавлен ReadOnly для помеченных только для чтения элементов TypedDict.

Экспериментальный JIT-компилятор:

  • Включается при сборке с --enable-experimental-jit.
  • Использует оптимизированный внутренний байт-код Tier 2 и трансляцию в машинный код.
  • Зависит от LLVM, имеет режимы только интерпретатора Tier 2.
  • Может ускорить выполнение некоторых программ.

Экспериментальная поддержка свободной развязки потоков:

  • При сборке с --disable-gil отключается глобальная блокировка интерпретатора (GIL).
  • Позволяет полностью использовать параллелизм на многоядерных системах.

Прочие изменения:

  • iOS теперь – официально поддерживаемая платформа.
  • Сборщик мусора стал инкрементальным.
  • Удалены более 19 устаревших модулей и библиотек.

Все остальные подробности – в официальной документации.

МЕРОПРИЯТИЯ

Комментарии

ВАКАНСИИ

Добавить вакансию
Go-разработчик
по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ