Вот три ключевые инновации, которые навсегда изменили экосистему Python.
1.
yield from: фундамент асинхронностиДо Python 3.3 объединение генераторов требовало написания громоздких циклов
for. Инструкция yield from позволила одному генератору полностью делегировать работу другому.🔛 Вместо ручного перебора значений, вы просто «пробрасываете» управление.
🔛
yield from автоматически обрабатывает передачу значений через .send() и проброс исключений внутрь цепочки.🔛 Без этой механики появление
async/await в будущем было бы невозможно. Ключевое слово await — это, по сути, синтаксический сахар над yield from.2.
venv: стандартизация окруженийДо 3.3 разработчики зависели от стороннего инструмента
virtualenv. Релиз 3.3 ввел модуль venv прямо в стандартную библиотеку.🔛 Теперь создание изолированного окружения для каждого проекта стало встроенной функцией языка (`python -m venv env`).
🔛 Это убило проблему «на моей машине работает», сделав использование
requirements.txt в связке с виртуальным окружением золотым стандартом индустрии.3. Namespace Packages: пакеты без границ
Раньше каждая папка в Python должна была содержать файл
__init__.py, чтобы считаться пакетом. Python 3.3 ввел неявные пространства имен (Implicit Namespace Packages).🔛 Теперь один логический пакет (например, `company.tools`) может быть физически разбит на несколько разных репозиториев или директорий.
🔛 Это упростило жизнь разработчикам плагинов и больших распределенных библиотек, избавив их от конфликтов при совпадении имен корневых папок.
🔗 Ссылка на полную статью
📍 Навигация: Вакансии • Задачи • Собесы
Библиотека питониста
#буст
