Вложенные циклы в Python
Что такое вложенные циклы?
Вложенные циклы — это циклы, которые запускаются в рамках другого цикла. Для вложенных циклов установлено ограничение, оно определяет количество вложенных циклов. В Python3 данное ограничение установлено на значении 20. Это означает, что разработчик может вложить одну циклическую конструкцию внутрь другой только до 20 раз. Если попытаться использовать более 20 вложенных циклов, то будет получена ошибка «RecursionError: maximum recursion depth exceeded», которая означает, что превышена максимальная глубина рекурсии (в Python3 она составляет 1000 вызовов).
Вложенные циклы while
В этом примере сначала запускается внешний цикл while, а затем запускается внутренний цикл и использует полученное значение внешнего цикла.
Подробнее о цикле while смотрите на странице — Цикл while в Python.
# Устанавливаем значение для переменной i внешнего цикла i = 1 # Открываем внешний цикл while i <= 2: # Выводим значение переменной i во внешнем цикле print(f'Внешний цикл #{i}') # Устанавливаем значение для переменной j внешнего цикла j = 1 # Открываем внутренний цикл while j <= 3: # Выводим значение переменной i и j во внутреннем цикле print(f'\tВнутренний цикл #{i}.{j}') # Увеличиваем значение переменной j j += 1 # Увеличиваем значение переменной i i += 1 # Вывод в консоли Внешний цикл #1 Внутренний цикл #1.1 Внутренний цикл #1.2 Внутренний цикл #1.3 Внешний цикл #2 Внутренний цикл #2.1 Внутренний цикл #2.2 Внутренний цикл #2.3
Вложенные циклы for
Сначала запускается внешний цикл for, а внутри него запускается внутренний цикл и использует полученное значение внешнего цикла.
Подробнее о цикле for смотрите на странице — Цикл for в Python.
# Открываем внешний цикл for i in range(1,3): # Выводим значение переменной i во внешнем цикле print(f'Внешний цикл #{i}') # Открываем внутренний цикл for j in range(1, 4): # Выводим значение переменной i и j во внутреннем цикле print(f'\tВнутренний цикл #{i}.{j}') # Вывод в консоли Внешний цикл #1 Внутренний цикл #1.1 Внутренний цикл #1.2 Внутренний цикл #1.3 Внешний цикл #2 Внутренний цикл #2.1 Внутренний цикл #2.2 Внутренний цикл #2.3