В общем, операторы выполняются последовательно – первый оператор функции выполняется первым, за которым следует второй оператор, и так далее. Там может быть ситуация, когда вам необходимо выполнить блок кода несколько раз.
Языки программирования обеспечивают различные структуры управления, которые позволяют более сложные пути выполнения.
Оператор цикла позволяет выполнить оператор или группу операторов несколько раз. Следующая диаграмма иллюстрирует оператор цикла:
Язык программирования Python предоставляет следующие типы циклов для обработки циклических требований.
S.No. | Тип цикла и описание |
---|---|
1 | while loop. Повторяется заявление или группы операторов while, пока заданное условие имеет значение TRUE. Он проверяет условие перед выполнением тела цикла. |
2 | loop. Выполняет последовательность операторов несколько раз и уменьшает счетчик, который управляет переменной loop. |
3 | Вложенные циклы. Вы можете использовать один или более циклов внутри любой другой while или loop. |
Операторы управления Loop изменяют исполнение в своей обычной последовательности. Когда исполнение выходит за предел, все автоматические объекты, которые были созданы в этой области будут уничтожены.
Python поддерживает следующие операторы управления:
S.No. | Заявление управления и описание |
---|---|
1 | Заявление break. Завершает оператор цикла и передает выполнение заявления сразу после цикла. |
2 | Заявление continue. Класс в цикле пропускает оставшуюся часть тела цикла и сразу же перепроверять его состояние до повторения. |
3 | Заявление pass. Заявление pass в Python используется, когда требуется синтаксически заявление, но если вы не хотите какой-либо команды или кода для выполнения. |
Итератор это объект, который позволяет программисту пройти через все элементы коллекции, независимо от его конкретной реализации. В Python, объект итератора реализует два метода, iter() и next().
Объекты строка, список или кортежи могут быть использованы для создания итератора.
list = [1,2,3,4] it = iter(list) # это создает итератор объекта print (next(it)) #печатает следующий доступный элемент в итераторе Объект итератор может быть изучен с помощью регулярных заявлений !usr/bin/python3 for x in it: print (x, end=" ") or using next() function while True: try: print (next(it)) except StopIteration: sys.exit() #вы должны импортировать модуль sys для этого
Генератор представляет собой функцию, которая производит или yield дает последовательность значений с использованием метода производности.
Когда функция генератора вызывается, она возвращает объект генератора, и начинает выполнение функции. Когда метод next() вызывается в первый раз, то функция начинает выполнение до тех пор, пока не достигнет оператора yield, который возвращает значение. Выход yield отслеживает т.е. запоминает последнее исполнение и второй вызов next() продолжается от предыдущего значения.
Следующий пример определяет генератор, который генерирует итератор для всех чисел Фибоначчи.
!usr/bin/python3 import sys def fibonacci(n): #Функция генератора a, b, counter = 0, 1, 0 while True: if (counter > n): return yield a a, b = b, a + b counter += 1 f = fibonacci(5) #f - это объект итератора while True: try: print (next(f), end=" ") except StopIteration: sys.exit()