Python · Трек

Синтаксис

Проходьте розділи по порядку. Кожна тема починається з короткого пояснення перед вправами.

3 рівні 35 тем 390 вправ

Порядок навчання

Розділи й теми

Відкривайте теми зверху вниз у межах кожного рівня або переходьте одразу до потрібної частини.

Початковий рівень

17 тем · 210 вправ

Умовні оператори Практичні вправи щодо умовних операторів у Python: порівняння чисел, перевірка діапазонів, робота з str, паролями, відсотками та базовою логікою if, elif, else. 15 завдань Умовні оператори 2 Додаткова практика щодо умовних операторів у Python: перевірки строк, довжини тексту, символів, зрізів, методів str, логічних операторів and та or та простих сценаріїв обробки введення. 11 завдань Методи рядків та f-strings Вивчіть найважливіші вбудовані методи рядків і форматування через f-strings. 10 завдань Цикл while Вправи по циклу while у Python: повторення дій, лічильники, суми чисел, введення до потрібної умови, break, перебір строк та базова обробка символів. 14 завдань Цикл for, списки та кортежи Практика циклу for Python на списках і кортежах: перебір колекцій, фільтрація значень, підрахунки, пошук мінімуму і максимуму, робота з строками, датами і вкладеними даними. 15 завдань Методи списків та кортежів Освойте всі методи списків і зрозумійте ключові відмінності між списками і кортежами. 10 завдань Функції Базові вправи з функцій Python: створення функцій, параметри, return, перевірки чисел і строк, робота зі списками, кортежами і простими обчисленнями. 10 завдань Функції рівень 2 Розширена практика функцій у Python: обробка строк та чисел, логічні перевірки, списки, фільтрація, підрахунки, пошук значень та написання невеликих функцій, що перевикористовуються. 20 завдань Функції: рівень 3 Вправи щодо функцій Python рівня 3: функції з режимами роботи, флагами, кількома умовами, обробкою строк, списків та чисел для розвитку алгоритмічного мислення. 15 завдань Основи ООП Практичні завдання з основ ООП в Python: створення класів та об'єктів, атрибути, методи, __init__, зміна стану об'єкта та просте моделювання сутностей. 11 завдань ООП: успадкування та dunder-методи Завдання по ООП в Python на спадкування та спеціальні методи: дочірні класи, перевизначення поведінки, __str__, __len__, розширення базових класів та робота з об'єктною моделлю. 9 завдань ООП, словники, алгоритмічне мислення Вправи з Python на ООП, словники та алгоритмічне мислення: класи для аналізу даних, підрахунок слів та символів, робота з оцінками, паролями, статистикою та перетворенням словників. 15 завдань Методи словників Освойте всі основні методи словників та dict comprehension для ефективної роботи з даними. 10 завдань set, dict та обробка помилок Практика Python з set, словниками та обробкою помилок: унікальні значення, загальні символи, try/except, безпечна обробка даних, угруповання слів та аналіз строк. 15 завдань Методи множин Навчіться працювати з множинами: додавати та видаляти елементи, а також виконувати операції об'єднання, перетину та різниці. 10 завдань Основи обробки помилок Навчіться обробляти помилки за допомогою try/except/else/finally, викидати власні виключення та писати надійний Python-код. 10 завдань Робота з файлами: читання та запис Практичні вправи щодо роботи з файлами в Python: читання тексту, запис рядків, додавання даних, підрахунок рядків і слів, обробка вмісту файлу та створення простих звітів. 10 завдань

Проміжний

10 тем · 100 вправ

Включення списків і словників Будуйте списки, словники та множини в одному виразі. Охоплює включення списків, словників, множин та вирази-генератори. 10 завдань lambda, map, filter, reduce Функціональні інструменти для перетворення та фільтрації колекцій без явних циклів. 10 завдань itertools Опануйте модуль itertools у Python: інструменти для роботи з ітераторами, генерації послідовностей та ефективного розв'язання комбінаторних задач. 10 завдань Рекурсія Функції, що викликають самі себе. Розглядає базові випадки, рекурсивні патерни та коли рекурсія є правильним інструментом. 10 завдань Сортування і компаратори sorted() та list.sort() з функціями key=, reverse та багатоключовими компараторами. 10 завдань Модулі datetime і json Робота з датами та часом за допомогою модуля datetime та серіалізація даних за допомогою модуля json. 10 завдань pathlib Навчіться працювати з файловими шляхами за допомогою сучасного модуля pathlib у Python — чистіший і потужніший за os.path. 10 завдань collections: Counter, defaultdict, namedtuple Спеціалізовані типи контейнерів: Counter для підрахунку, defaultdict для згрупованих даних, namedtuple для структурованих записів. 10 завдань dataclasses Навчіться використовувати датакласи Python для визначення чистих контейнерів даних без шаблонного коду з автоматичною генерацією __init__, __repr__ і __eq__. 10 завдань Регулярні вирази Пошук за шаблоном за допомогою модуля re. Охоплює search, match, findall, групи та поширені патерни. 10 завдань

Просунутий рівень

8 тем · 80 вправ

Декоратори Функції, що обгортають інші функції для зміни або розширення їх поведінки. Покриває синтаксис `@`, декоратори з аргументами, стекування та `functools.wraps`. 10 завдань Декоратори методів класів ООП Опанування @classmethod, @staticmethod, @property, @property.setter та @property.deleter. Коли кожен доречний і як вони взаємодіють зі спадкуванням. 10 завдань Генератори та itertools Функції, що повертають значення по одному замість побудови повного списку. Покриває `yield`, `yield from`, вирази-генератори та itertools. 10 завдань Контекстні менеджери Об'єкти, що керують налаштуванням і очищенням через оператор `with`. Покриває `__enter__`/`__exit__`, `contextlib.contextmanager` та патерни управління ресурсами. 10 завдань Анотації типів і dataclasses Статичні анотації, що документують наміри та підтримують інструменти IDE. Покриває `Optional`, `Union`, `TypedDict`, `Protocol` та `dataclasses`. 10 завдань Асинхронний Python Пишіть конкурентні програми з `async def`, `await` та `asyncio`. Охоплює корутини, `asyncio.gather`, завдання, `asyncio.Queue` та асинхронні ітератори. 10 завдань Тестування з pytest Пишіть надійні тести за допомогою pytest. Охоплює тестові функції, фікстури, parametrize, monkeypatch та тестування винятків. 10 завдань functools: partial, lru_cache та інше Опануйте модуль functools: `partial`, `wraps`, `lru_cache`, `cached_property`, `total_ordering` та `singledispatch`. 10 завдань