Python позволяет нам легко создавать циклы внутри циклов. Есть только одна загвоздка: внутренний цикл всегда завершается раньше внешнего цикла.
Для каждой итерации внешнего цикла итератор во внутреннем цикле будет выполнять свои итерации для заданного диапазона, после чего внешний цикл может перейти к следующей итерации.
for
Давайте рассмотрим пример: у нас есть двумерный список (подробнее в следующе главе) и мы хотим вывести каждый элемент этого списка:
d = [[1,2,3],[4,5,6]]
for i in d:
print(i)
Этот цикл отработает только два раза, т.к. список имеет всего два элемента, каждый из которых тоже является списком:
Вывод:
[1, 2, 3]
[4, 5, 6]
Для того чтобы перебрать вложенные списки нам необходимо добавить вложенный цикл:
d = [[1,2,3],[4,5,6]]
for i in d:
for j in i:
print(j)
Вывод:
1
2
3
4
5
6