Выбор ответа Junior Итераторы и генераторы обновлено

zip списков разной длины

Вопрос

Что вернёт list(zip([1, 2, 3], "ab"))?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: [(1, 'a'), (2, 'b')]. zip останавливается на самой короткой последовательности.

Варианты ответа

  1. [(1, 'a'), (2, 'b'), (3, None)]
  2. ValueError
  3. [(1, 'a'), (2, 'b')]правильный ответ
  4. [(1, 'a'), (2, 'b'), (3, '')]

Разбор

zip останавливается на самой короткой последовательности. Дополнение значением даёт itertools.zip_longest (по умолчанию None). ValueError бросит только zip(..., strict=True) (3.10+), если длины различаются.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме