Петли в Python

1- Обзор циклов в Python

В Python команды (statement) выполняются последовательно сверху вниз. Однако, если вы хотите несколько раз выполнить блок команд, вы можете использовать цикл (loop).
Python предоставляет вам 2 вида цикла:
  1. while loop
  2. for loop
Команды ассоцируются с циклом:
  • else
Команды (statement) могут быть использованы внутри цикла:
  1. continue
  2. break
  3. pass
Команда Описание
break Завершает оператор цикла.
continue Заставляет цикл пропустить остальные команды в блоке (block) и немедленно повторить проверку условий до повторения.
pass Команда pass в цикле - просто знак, напоминающий вам добавить некоторый код (code) в будущем. Это пустая команда null (ничего не делать).

2- Цикл while

Синтаксис цикла  while:
while (condition) :
     # Do something here
     # ....
Пример:
whileLoopExample.py
print("While loop example");

# Declare a variable, and assign
x = 2;


# Condition is x < 10
# If x < 10 is true then run block

while (x < 10) :

    print("Value of x = ", x);

    x = x + 3;

# This statment is outside of while block.
print("Finish");
Запуск примера:

3- Цикл с range

Простейшим примером цикла for в Python является использование ' for' с ' range'. Например, переменная 'x' имеет значение, которое выполняется в пределах области (3, 7) (x = 3, 4, 5, 6).
forLoopExample.py
print("For loop example");


# for x = 3, 4, 5, 6
for x in range (3, 7) :
 
    print("Value of x = ", x);
    print("  x^2 = ", x * x);


# This statment is outside of for block.
print("End of example");
Запуск примера:

4- Использование for и массива

Использование цикла for может помочь вам просматривать на элементах массива.
forLoopExample3.py
print("For loop example");

# Declare an array
names =["Tom","Jerry", "Donald"];

for name in names:
 
    print("Name = ", name);      

 
print("End of example");
Просмотр элементов массива по индексу (index):
forLoopExample3b.py
print("For loop example");

# Declare an array
names =["Tom","Jerry", "Donald"];

# len() function return length of array.

# index = 0,1,.. len-1
for index in range(len(names)):
 
    print("Name = ", names[index] );     

 
print("End of example");

5- Использование команды break в цикле

break - это команда, которая может находиться блоке команд цикла. Этот команда завершает цикл безоговорочно.
print("Break example");
    
# Declare a variable and assign value of 2
x = 2;

while (x < 15) :
    print("----------------------\n");
    print("x = ", x);
   
    # If x = 5 then exit the loop.
    if (x == 5) :    
        break;
   
    # Increase value of x by 1 
    x = x + 1;
    print("x after + 1 = ", x);
   
   
print("End of example");   

6- Использование команды continue в цикле

continue - это команда, которая может находиться в цикле. Когда встречается команда continue, программа проигнорирует командные строки в блоке ниже continue и начинает новый цикл.
loopContinueExample.py

print("Continue example");

# Declare a variable and assign value of 2
x = 2

while (x < 7) :
    print("----------------------\n")
    print("x = ", x)
    
    # % is used for calculating remainder
    # If x is even, then ignore the command line below of continue
    # and start new loop.
    if (x % 2 == 0) :    
        # Increase x by 1.
        x = x + 1
        continue

    else :
    
        # Increase x by 1.
        x = x + 1

        print("x after + 1 =", x)
        
 
 
print("End of example");       

7- Использование команды pass в цикле

В  Python pass это команда  null (ничего). Разница между комментарием (comment) и командой  pass в Python заключается в том, что, хотя интерпретатор (interpreter) полностью игнорирует комментарий, а  pass не игнорируется.

Однако ничего не происходит, когда выполняется команда pass.


Команда  pass в цикле - просто знак, напоминающий вам добавить некоторый код (code) в будущем.
loopPassExample.py
number = 0

for number in range(5):
    number = number + 1
  
    if number == 3:       
        print(" do something here " , number)
        pass  

    print(" >> " ,number )

print('Out of loop')
Запуск примера:
Вы можете удалить оператор pass в примере выше без каких-либо изменений.
loopPassExample.py (Remove pass statement)
number = 0

for number in range(5):
    number = number + 1
  
    if number == 3:       
        print(" do something here " , number)
        # pass (Remove pass) 

    print(" >> " ,number )

print('Out of loop')

8- Использование команды 'else' с циклом

Команда  else может быть связана с циклом. Команда  else выполняется, если цикл выполняется и заканчивается обычным образом, а не прерывается команда  break.
forLoopElseExample.py
print("For loop example");


# for x = 3, 4, 5, 6
for x in range (3, 7) :

    print("Value of x = ", x);
    print("  x^2 = ", x * x);
else :
    print("finish for loop")


# This statment is outside of for block.
print("End of example");
Если цикл прерывается командой  break, команда  else, связанная с циклом, не будет выполнена.
forLoopElseExample2.py
print("For loop example");


# for x = 3, 4, 5, 6
for x in range (3, 7) :
 
    print("Value of x = ", x);
    if x == 5:
        print("Break!")
        break;
   
else :
    # If the break has been called, this command will not be executed
    print("This command will not be executed!")
   

# This statment is outside of for block.
print("End of example");