Цикл Python

Цикл Python

Циклы — одно из фундаментальных понятий языков программирования. Циклы используются для выполнения повторяющихся задач до тех пор, пока не будет выполнено определённое условие.

В Python есть две основные циклические конструкции, которые позволяют многократно повторять блок кода: циклы for и while .

В этой статье мы рассмотрим основы циклов for в Python. Мы также покажем, как использовать тип range для генерации последовательности чисел, а также как использовать операторы else , break и continue для изменения хода выполнения цикла.

Python for цикла

Цикл for в Python перебирает элементы последовательности и многократно выполняет блок операторов.

Цикл for Python имеет следующий вид:

 for item in sequence: statements

Оператор for начинается с ключевого слова for , затем следует переменная ( item ), которой присваивается каждый элемент последовательности (целевой объект управления циклом), затем ключевое слово in и, наконец, сама последовательность. Каждый условный оператор заканчивается двоеточием ( : ).

Блок statements начинается с отступа и заканчивается первой строкой без отступа. Большинство разработчиков используют отступ в 4 или 2 пробела. Официальное руководство по стилю кода Python рекомендует использовать 4 пробела на уровень отступа и избегать смешивания табуляции и пробелов для отступов.

Вот пример:

 berries = [ "Blueberry" , "Raspberry" , "Strawberry" ] for berry in berries : print ( berry )
 Blueberry Raspberry Strawberry

Вы можете перебирать любую последовательность, например строку, список, словарь или кортеж.

В приведенном ниже коде мы перебираем символы в строке «linux»:

 for x in 'linux' : print ( x )
 linux

При циклическом просмотре словаря переменная присваивается ключу:

 berries = { 'Blueberry' : 100 , 'Raspberry' : 125 , 'Strawberry' : 150 } for key in berries : print ( key )
 Blueberry Raspberry Strawberry

Для доступа к значениям словаря используйте индекс ключа:

 berries = { 'Blueberry' : 100 , 'Raspberry' : 125 , 'Strawberry' : 150 } for key in berries : print ( berries [ key ])

Другой вариант перебора значений словаря — использование метода values() :

 berries = { 'Blueberry' : 100 , 'Raspberry' : 125 , 'Strawberry' : 150 } for value in berries . values (): print ( value )

Вывод обоих примеров одинаков:

 100 125 150

Конструктор range()

Конструктор Python range() позволяет генерировать последовательность целых чисел, определяя начальную и конечную точку диапазона. range() работает по-разному в Python 2 и 3. В этой статье мы используем Python 3.

range() обычно используется в цикле for для перебора последовательности чисел. Это эквивалент цикла for в стиле C for Python.

Если задан только один аргумент, range возвращает последовательность чисел, увеличивающихся на 1, начиная с 0 до argument - 1 :

 for i in range ( 3 ): print ( i )
 0 1 2

Если указаны два аргумента, range возвращает последовательность чисел, увеличенную на 1, начиная с первого аргумента и до second argument - 1 :

 for i in range ( 3 , 5 ): print ( i )
 3 4

Третий аргумент позволяет указать приращение:

 for i in range ( 0 , 16 , 5 ): print ( i )
 0 5 10 15

Вложенный цикл for

Вложенный цикл — это цикл внутри другого цикла. Он часто используется для работы с итерируемыми объектами, содержащими итерируемые элементы:

 for i in range ( 0 , 6 ): for j in range ( 0 , 6 ): print ( ' %d + %d = %d ' % ( i , j , i + j ))
 0 + 0 = 0 0 + 1 = 1 0 + 2 = 2 ... 5 + 3 = 8 5 + 4 = 9 5 + 5 = 10

Операторы break и continue

Операторы break и continue позволяют контролировать выполнение цикла for .

break Заявление

Оператор break завершает текущий цикл и передаёт управление программой оператору, следующему за циклом. При использовании внутри вложенного цикла оператор break завершает самый внутренний цикл.

В следующем примере мы используем оператор if для завершения выполнения цикла, как только текущий итерируемый элемент станет равен «Raspberry»:

 for i in [ "Blueberry" , "Raspberry" , "Strawberry" ]: if i == "Raspberry" : break print ( i )
 Blueberry

continue утверждение

Оператор continue завершает текущую итерацию цикла и передает управление программой следующей итерации. Цикл не прерывается; пропускается только текущая итерация.

В следующем примере мы перебираем диапазон чисел. Когда текущий элемент перебираемой строки равен 3, оператор continue возвращает выполнение к началу цикла и продолжает следующую итерацию:

 for i in range ( 1 , 6 ): if i == 3 : continue print ( i )
 1 2 4 5

Пункт else

В Python цикл for может иметь необязательное предложение else .

Предложение else выполняется, когда цикл завершается нормально, т. е. когда все итерируемые элементы исчерпаны:

 for i in [ "Blueberry" , "Raspberry" , "Strawberry" ]: print ( i ) else : print ( 'Loop completed.' )
 Blueberry Raspberry Strawberry Loop completed.

Когда цикл завершается операторами break или continue , предложение else не выполняется:

 for i in [ "Blueberry" , "Raspberry" , "Strawberry" ]: if i == "Raspberry" : break print ( i ) else : print ( 'Loop completed.' )
 Blueberry

Заключение

Цикл for Python используется для многократного выполнения блока кода фиксированное количество раз.

Если у вас есть вопросы или пожелания, не стесняйтесь оставлять комментарии.

цикл питона

Связанные руководства

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *