Урок 41. Практикум 10

📁 Блок: Python Fundamentals / Практика collections и функций⏱️ Время изучения: ~120 мин🎯 Сложность: Практикум
#defaultdict #append #items #for #in #popitem #global #lower #split #print #from #import #sorted #list #lambda #fromkeys #len #while #extend #replace #def #return #is #dict #if #else #clear #update #with

⚡ Кратко: что важно

Counter подходит для популярных слов.

defaultdict(list) удобно группирует задачи и слова.

Поиск задач по категории можно сделать фильтрацией items().

OrderedDict позволяет менять порядок задач без создания новой очереди.

defaultdict(int) подходит для подсчёта посещений страниц.

global нужен только в задаче со счётчиком вызовов, но в проектах лучше избегать такой зависимости.

LRU-очередь можно моделировать через OrderedDict и move_to_end().

Каждое решение лучше оформлять функцией с понятными параметрами.

Топ-3 ошибки: не нормализовать регистр слов; создавать новую очередь вместо изменения исходной; забыть удалить старые элементы при превышении LRU-лимита.

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

Практикум закрепляет функции, Counter, defaultdict, OrderedDict, global и идею LRU-кэша на прикладных задачах. В источнике отдельной LMS-домашки для этого практикума не извлечено, поэтому файл homework.html оформляет практикум как самостоятельную проверку.

Цели

  • решить 8 задач практикума
  • закрепить Counter/defaultdict/OrderedDict
  • повторить global на маленьком примере
  • построить LRU-очередь задач

Что повторить заранее

Разделы урока

Что дальше

Следующий урок будет добавлен после следующего запуска генерации.