Этап 1 из 11 · ≈ 12 ч

Основы языка

Основа с Junior

Типы и изменяемость, коллекции, функции и области видимости, исключения.

Что важно знать

  • Всё — объекты; переменная — имя, ссылающееся на объект.
  • Изменяемые: list, dict, set; неизменяемые: int, str, tuple.
  • def f(x=[]) — список создаётся один раз.
  • Копирование: copy и deepcopy.
  • Словарь сохраняет порядок вставки, поиск O(1).
  • try/except/else/finally, свои исключения, raise from.

Критерии освоения

Junior ≈ 12 ч

  • Объясняет изменяемые и неизменяемые типы и ловушку изменяемого аргумента по умолчанию
  • Выбирает между списком, кортежем, словарём и множеством по операциям
  • Обрабатывает исключения и пишет свои классы исключений

Практика. Решить 20 задач «что выведет код» на изменяемость, копирование и области видимости.

Middle ≈ 4 ч

  • Объясняет устройство словаря и почему ключ должен быть хешируемым

Практика. Реализовать LRU-кэш на dict и сравнить с functools.lru_cache.

Проверка знаний

Войдите, чтобы пройти тест: сданный тест отмечает тему пройденной на карте и в ИПР.

Вопросы с собеседований

Смотреть все
Как устроен словарь в Python?Junior

dict — хеш-таблица: по hash(key) находится место ключа, поиск в среднем за O(1).

Полный разбор
Когда использовать defaultdict, Counter, deque и OrderedDict?Middle

defaultdict(list) — значение по умолчанию для нового ключа (группировка без проверок). Counter — подсчёт: most_common, сложение и вычитание счётчиков. deque — двусторонняя очередь с O(1) по краям и maxlen (скользящее окно). OrderedDict — move_to_end и…

Полный разбор
Чем отличается is от ==?Junior

== сравнивает значения, is — что это один и тот же объект.

Полный разбор
Чем список отличается от кортежа?Junior

Список изменяемый, кортеж — нет; отсюда остальные различия.

Полный разбор
Чем изменяемые типы отличаются от неизменяемых?Junior

Изменяемый объект меняется на месте, неизменяемый — только заменяется новым.

Полный разбор
Что такое множество (set) и когда его использовать?Junior

set — неупорядоченный набор уникальных хешируемых элементов на хеш-таблице.

Полный разбор

Разборы темы

← Вся карта «Python»

Партнёр платформы

Разбор собеседования с sotto

После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.

Разбор собеседования