Каталог/назад к курсам
Python для профессионалов
PythonСредний

Python для профессионалов

Python для профессионалов — курс для людей, стремящихся углубить свои знания языка. Вы изучите итераторы, генераторы, декораторы, современные возможности Python (3.8+), освоите метапрограммирование, асинхронность, внутреннее устройство интерпретатора, инструменты оптимизации и профилирования, а также получите уверенность в использовании продвинутых возможностей стандартной библиотеки.

11 модулей • 45 уроков163 задания с проверкойоколо 35 ч
Код в браузере: PythonРазбор преподавателемСвободный темпСертификат с проверкой

О курсе

Этот курс предназначен для тех, кто уже знаком с Python и хочет выйти на следующий уровень. Он поможет вам освоить современные и профессиональные практики, которыми активно пользуются разработчики в индустрии.

Почему стоит выбрать именно этот курс:

Вы не просто повторите базу — вы изучите то, о чём редко говорят в начальных курсах: внутреннее устройство интерпретатора, продвинутые паттерны, асинхронность, метапрограммирование и приёмы оптимизации.

После прохождения курса вы сможете:

Писать более эффективный, читаемый и профессиональный код

Глубже понимать, как работает Python “под капотом”

Использовать возможности языка, недоступные начинающим

Улучшить производительность своих программ

Что вас ждёт:

Теория с примерами

Практические задания

Работа с реальными сценариями

Модули по итераторам, декораторам, async/await, GIL, профилированию и др.

Обновления:

20.04.2025 - Добавлены задачи на продвинутые возможности генераторов

22.04.2025 - Скорректированы 2 задачи

08.05.2025 - Начало тестирование раздела FAQ для уроков 1 модуля

12.05.2025 - Добавлены объяснения после неправильных ответов в сложных задачах 2-4 модуля

19.05.2025 - Добавлены объяснения после неправильных ответов в сложных задачах 5-6 модуля

26.06.2025 - Добавлены разделы FAQ в модули 3-6

27.06.2025 - Раздел FAQ добавлен во все модули

Чему научитесь

  • Создавать собственные итераторы и генераторы и управлять ленивыми вычислениями
  • Проектировать декораторы и менеджеры контекста для прикладных задач
  • Писать асинхронный код с async/await и asyncio
  • Использовать метапрограммирование и специальные возможности объектов Python
  • Понимать работу памяти, GIL и ключевые механизмы интерпретатора
  • Профилировать и оптимизировать CPU-, memory- и I/O-нагрузку
  • Применять современные возможности Python и продвинутые модули стандартной библиотеки

Для кого

  • Python-разработчики после уверенного освоения базового языка
  • Backend- и data-инженеры, которым нужны асинхронность, профилирование и внутреннее устройство Python
  • Разработчики, готовящиеся к задачам и собеседованиям уровня middle

Формат

  • 12 модулей и 50 уроков
  • Теория с примерами и практические задания
  • Темы от итераторов и декораторов до asyncio, GIL и профилирования
  • Задания ориентированы на реальные сценарии профессиональной разработки

Что нужно на старте

  • Уверенное знание функций, классов, коллекций, исключений и модулей Python
  • Опыт написания небольших Python-приложений
  • Умение работать с виртуальным окружением, pip и Git
#stepik-import

Автор курса

Алексей Малышкин

Разрабатываю образовательные материалы по программированию, машинному обучению и анализу данных. Темы: Python-разработка, аналитика, ML-инструменты (LangChain, vector databases, AI agents), компьютерное зрение. Стараюсь объяснять технические концепции понятно и структурировано. Ранее преподавал на Stepik и обучил более 2000 студентов. Мой профиль на Stepik - https://stepik.org/users/273781420/profile Мой телеграм для связи @alexey_latorn

Программа

01Введение1 урок
1Приветствие
02Итераторы и генераторы6 уроков
1Итерации в Python: итерируемые объекты
2Протокол итератора: функции iter() и next(), метод __next__
3Создание пользовательских итераторов
4Генераторы: функции-генераторы и ключевое слово yield
5Генераторные выражения
6Продвинутые возможности генераторов
03Декораторы5 уроков
1Функции высшего порядка и области видимости
2Зачем нужны декораторы: изменение поведения функций
3Синтаксический сахар для декораторов: оператор @
4Декораторы с параметрами
5Декорирование методов и классов
04Менеджеры контекста4 урока
1Оператор with и протокол менеджеров контекста
2Использование встроенных менеджеров контекста (пример: файл)
3Создание своего менеджера контекста
4Библиотека contextlib: упрощение создания менеджеров контекста
05Асинхронное программирование (async/await, asyncio)5 уроков
1Конкурентность vs параллелизм: зачем нужна асинхронность
2Основы async/await: определение и вызов корутин
3Библиотека asyncio и цикл событий
4Пример: асинхронная обработка веб-запросов
5Асинхронные генераторы и менеджеры контекста
06Метапрограммирование5 уроков
1Интроспекция и динамические возможности Python
2Дескрипторы: управление доступом к атрибутам
3Метаклассы: классы, создающие классы
4Примеры использования метаклассов
5Динамическое создание и модификация классов
07Стандартная библиотека5 уроков
1Модуль functools: функции для функций
2Модуль itertools
3Модуль collections: расширенные контейнеры
4Модуль concurrent.futures: простая параллельность
5Другие полезные модули стандартной библиотеки
08Внутреннее устройство Python3 урока
1CPython: интерпретатор и байткод
2GIL: Глобальная блокировка интерпретатора
3Сборка мусора в Python: подсчет ссылок и циклический GC
09Оптимизация и профилирование4 урока
1Профилирование времени выполнения: cProfile и анализ результатов
2Измерение времени отдельных операций: модуль timeit
3Профилирование памяти: memory_profiler, tracemalloc
4Приёмы оптимизации Python-кода
10Современные возможности языка (фичи Python 3.8+, актуальные PEP)5 уроков
1Оператор присваивания в выражениях (PEP 572, Python 3.8)
2Позиционные только параметры (PEP 570, Python 3.8)
3Объединение словарей и улучшения Python 3.9
4Структурное сопоставление (match/case, PEP 634, Python 3.10)
5Новое в Python 3.11 и далее: оптимизация и другие PEP
11Заключение2 урока
1Формочка для обратной связи
2Заключение
Дополнительные материалы и практика