Урок 61. Практикум 15

📁 Блок: Python Fundamentals / Практика ⏱️ Время изучения: ~110 мин 🎯 Сложность: Средняя
#match #for #in #compile #load #dump #loads #dumps #open #with #as #defaultdict #lambda #yield #print #import #from #rstrip #def #append #round #sum #len #items #startswith #if #elif #return #strip #format #is #continue #all #int #split

⚡ Кратко: суть урока

Практикум, объединяющий регулярные выражения, работу с файлами, JSON, датами и генераторами. Решаем четыре задачи: анализ оценок по кварталам, поиск немецких мобильных номеров, извлечение email-адресов и номеров банковских карт.

  • Читайте JSON/текстовые файлы через pathlib.Path или open с encoding="utf-8".
  • Парсите даты через datetime.strptime, а регулярки компилируйте в сырых строках r"...".
  • Проверяйте найденные совпадения дополнительно, а не полагайтесь только на regex.

Что запомнить: регулярное выражение — это фильтр первого приближения; финальную валидацию часто удобнее делать кодом.

Частая ошибка: путать re.match и re.search или забывать про сырые строки.

О чём этот урок

Это практический урок, на котором закрепляются темы последних модулей: регулярные выражения, чтение и запись файлов, сериализация JSON, работа с датами и генераторами. Все четыре задания взяты из исходных материалов курса, но решения дополнены современными практиками Python.

Что изучим

  • Группировку и агрегацию данных из JSON по временны́м периодам.
  • Поиск телефонных номеров, email и номеров карт с помощью re.
  • Очистку и нормализацию найденных строк.
  • Современный стиль: f-строки, аннотации типов, pathlib.

📚 Что повторить перед изучением

🎯 Что изучать дальше