Цикл for в Python
Как работает цикл for
Цикл for в Python используется для перебора последовательности, которая может быть представлена в виде списка, кортежа, словаря, множества или строки. Цикл for в отличие от цикла while не требует предварительно объявленной индексирующей переменной.
Рассмотрим работу цикла for на нескольких примерах.
Пример 1
В объявленной переменной welcome_str хранится строковое значение. Необходимо при помощи цикла for получить все символы из переменной welcome_str, так как строка является итерируемой последовательностью. Открываем цикл for и в качестве переменной, в которую будет записано значение при каждой итерации цикла устанавливаем значение x. Затем после оператора in указываем имя переменной welcome_str, а в теле цикла выводим значение переменной x. В результате выполнения цикла будет получена последовательность символов.
welcome_str = 'Hello world' for x in welcome_str: print(x, end = ',') # Вывод в консоли H,e,l,l,o, ,w,o,r,l,d,
Пример 2
В переменной list_name хранится список с именами пользователей. Необходимо при помощи цикла for получить все имена из списка list_name.
list_name = ['Иван', 'Дмитрий', 'Александра', 'Олеся', 'Кирилл'] for x in list_name: print(x, end = ' ') # Вывод в консоли Иван Дмитрий Александра Олеся Кирилл
Команда break и выход из цикла for
Команда break позволяет незамедлительно прервать выполнение цикла for в зависимости от указанного условия.
Важный момент: команда break может использоваться в любых циклах Python.
Пример
В переменной list_fruits хранится список с названиями фруктов. Необходимо при помощи цикла for вывести названия всех фруктов, но как только встретится название Банан нужно завершить работу цикла командой break.
list_fruits = ['Яблоко', 'Банан', 'Апельсин', 'Виноград'] for fruits in list_fruits: if fruits == 'Банан': break print(fruits, end=' ') # Вывод в консоли Яблоко
Команда continue и продолжение цикла for
Команда continue позволяет пропускать значения в цикле for в зависимости от указанных условий.
Пример
В переменной list_fruits хранится список с названиями фруктов. Необходимо при помощи цикла for вывести названия всех фруктов, но как только встретится название Банан нужно пропустить это значение и перейти к следующему используя команду continue.
list_fruits = ['Яблоко', 'Банан', 'Апельсин', 'Виноград'] for fruits in list_fruits: if fruits == 'Банан': continue print(fruits, end=' ') # Вывод в консоли Яблоко Апельсин Виноград
Команда else в цикле for
Команда else выполняется по завершению работы цикла for. Данная команда не является обязательной.
Пример
В переменной list_num хранится список с числовыми значениями. Необходимо при помощи цикла for вывести все значения из списка list_num, а во завершению работы цикла вывести текст Цикл завершил работу используя команду else.
list_num = [1, 2, 3, 4, 5, 6] for x in list_num: print(x, end=' ') else: print(f'\nЦикл завершил работу') # Вывод в консоли 1 2 3 4 5 6 Цикл завершил работу
Цикл for и функция range()
Для запуска цикла for необходимое количество раз, можно использовать функцию range(). Она позволяет сгенерировать числовую последовательность от n до m.
Пример
Необходимо вывести числа от 1 до 10 при помощи цикла for и функции range(). С синтаксисом цикла уже знакомы поэтому обратим внимание на то, как написана функция range(). В качестве первого параметра в функцию передается значение 1 это начальное значение, а в качестве второго параметра передается значение 11 (значение 11 не будет включено в последовательность и в конечном варианте будет получена последовательность от 1 до 10).
for x in range(1, 11): print(x, end=' ') # Вывод в консоли 1 2 3 4 5 6 7 8 9 10