Чему вы научитесь
- Работать с объектами date, time, datetime и timedelta: знать атрибуты, методы и поведение в граничных случаях
- Форматировать даты в строки и парсить строки в даты, включая обработку битых данных через try/except
- Применять ISO 8601 и Unix timestamp в нужном контексте
- Считать рабочие дни с праздниками, находить первый и последний день периода, определять квартал и ISO-неделю
- Строить диапазоны дат, группировать события по месяцам, фильтровать по периодам
- Разграничивать naive и aware datetime и корректно работать с каждым типом
- Конвертировать время между часовыми поясами через ZoneInfo: DST и атрибут fold включены
- Прибавлять месяцы и годы к датам через relativedelta там, где timedelta не справляется
- Генерировать повторяющиеся события через rrule и rruleset
- Парсить даты в произвольных форматах через dateutil.parser с обработкой ParserError
О курсе
Для кого этот курс
Начальные требования
Специальных знаний про даты не нужно. Курс объясняет всё с нуля.
Нужен базовый Python: переменные, строки, циклы, условия. Сложного Python здесь нет. Всё, что нужно сверх базы, объясняется по ходу.
Преподаватели курса
Как проходит обучение
Курс состоит из 7 модулей. Идём последовательно: каждый следующий раздел опирается на предыдущий. Сначала базовые объекты date и datetime, далее арифметика и парсинг, потом рабочие дни и диапазоны, затем часовые пояса и dateutil. Каждый модуль использует то, что было раньше.
Формат уроков
Уроки текстовые. С примерами кода и короткими пояснениями. Читаете в своём темпе, возвращаетесь к сложному месту, проверяете код у себя.
Код максимально приближен к реальным задачам: расчёт рабочих дней, группировка событий по месяцам, конвертация между часовыми поясами, работа с ISO 8601 и т.д.
Практика в каждом модуле
После теории идут задания. Их много, около 400 по всему курсу. Это сделано специально, т.к. работа с датами требует набить руку.
- Тесты: проверяют понимание деталей.
- Числовые и текстовые задачи: нужно посчитать результат, получить точный вывод.
- Сопоставление и сортировка: когда нужно увидеть связи, а не просто вспомнить
- Написание кода: вы решаете задачу целиком, система запускает решение и сравнивает вывод с эталоном.
Есть быстрые задания на закрепление, есть такие, где придётся посидеть. Особенно в блоке про часовые пояса.
Проверка и обратная связь
Отправили и сразу видите результат. Можно переделывать сколько угодно раз. Если что-то непонятно даже после нескольких попыток - есть чат поддержки, там можно спросить по конкретному заданию.
Если что-то остаётся непонятным, можно задать вопрос в чате поддержки и получить комментарий по конкретному заданию или уроку.
Что вы получите
- Тему, которую регулярно спрашивают на собеседованиях. Работа с датами и временем - это стандартный блок вопросов для backend‑разработчиков, аналитиков, тестировщиков. Разница между naive и aware, поведение timedelta, ISO‑недели, часовые пояса. Большинство отвечает поверхностно. Вы будете понимать механику.
- Навык, который используется в каждом проекте. Логи, отчёты, дедлайны, интеграции с API, расписания задач - везде есть дата и время. Освоив datetime и dateutil, вы закрываете пласт задач, который встречается постоянно, т.к. любая система живёт во времени.
- Около 400 заданий. Это объём, после которого работа с датами перестаёт быть теорией. Вы считаете периоды, пишете функции, ловите ошибки, исправляете их. После такого количества практики код с датами перестаёт пугать.
- Понимание сложных сценариев. DST и атрибут fold, переходы между часовыми поясами, последний рабочий день месяца, пересечение диапазонов, прибавление месяцев через relativedelta. Темы, которые редко разбирают подробно, здесь разобраны системно.
- Документ о прохождении курса. При успешном завершении вы получаете сертификат платформы.