В одном списке лежат названия товаров, в другом цены.
zip() соединяет элементы с одинаковыми позициями в пары, поэтому оба списка можно обработать в одном цикле. Функция возвращает итератор: пары появляются по мере обхода, а не хранятся в готовом списке заранее.Проверьте ловушку на двух списках разной длины. zip() остановится вместе с самым коротким и пропустит остаток. Сравните
list(zip(...)) с itertools.zip_longest(): второй вариант сохранит лишние элементы и подставит заполнитель там, где пары нет.В разборе Real Python показано, как собрать словарь через
dict(zip()) и разъединить готовые пары оператором *. Для тренировки замените числа и буквы двумя своими списками и распечатайте получившиеся пары.
