betacode

Петли в Python

  1. Обзор циклов в Python
  2. Цикл while
  3. Цикл с range
  4. Использование for и массива
  5. Использование команды break в цикле
  6. Использование команды continue в цикле
  7. Использование команды pass в цикле
  8. Использование команды 'else' с циклом

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

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

2. Цикл while

Синтаксис цикла while:
while (condition) :
     # Do something here
     # ....
Пример:
whileLoopExample.py
print("While loop example");
# Создать переменную x и прикрепить к ней значение 2.
x = 2;

# Условие проверки x < 10
# Если x < 10 верно, то выполнить данный блок команды.
while (x < 10) : 
    print("Value of x = ", x); 
    x = x + 3; 

# Данная строка данных находится вне блока команд while.
print("Finish");
Запуск примера:
While loop example
Value of x = 2  
Value of x = 5
Value of x = 8
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);

# Данная строка данных находится вне блока команд for.
print("End of example");
Запуск примера:
For loop example
Value of x = 3
  x^2 = 9
Value of x = 4
  x^2 = 16
Value of x = 5
  x^2 = 25
Value of x = 6
  x^2 = 36
End of example

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

Использование цикла for может помочь вам просматривать на элементах массива.
forLoopExample3.py
print("For loop example"); 
# Объявить массив.
names =["Tom","Jerry", "Donald"];

for name in names: 
    print("Name = ", name);     
 
print("End of example");
Output:
For loop example
Name = Tom
Name = Jerry
Name = Donald
End of example
Просмотр элементов массива по индексу (index):
forLoopExample3b.py
print("For loop example"); 
# Объявить массив.
names =["Tom","Jerry", "Donald"];

# Функция len() возвращает количество элементов в массиве.
# index = 0,1,.. len-1
for index in range(len(names)): 
    print("Name = ", names[index] );   
 
print("End of example");

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

break - это команда, которая может находиться блоке команд цикла. Этот команда завершает цикл безоговорочно.
loopBreakExample.py
print("Break example"); 
# Создать переменную x и прикрепить к ней значение 2.
x = 2; 
while (x < 15) :
    print("----------------------\n");
    print("x = ", x);
    
    # Проверить, если x = 5, то выйти из цикла.
    if (x == 5) :     
        break; 
    # Увеличить значение х на 1
    x = x + 1;
    print("x after + 1 = ", x); 
    
print("End of example");
Output:
Beak example
----------------------
x = 2
x after + 1 = 3
----------------------
x = 3
x after + 1 = 4
----------------------
x = 4
x after + 1 = 5
----------------------
x = 5
End of example

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

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

# Объявить переменную и прикрепить значение 2
x = 2 

while (x < 7) : 
    print("----------------------\n") 
    print("x = ", x) 
    
    # % : деление с остатком.
    # Если x являеся четным числом, то пропустить команды внизу 'continue'    
    # чтобы продолжить новый повтор (iteration).    
    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");
Output:
Continue example
----------------------
x = 2
----------------------
x = 3
x after + 1 = 4
----------------------
x = 4
----------------------
x = 5
x after + 1 = 6
----------------------
x = 6
End of example

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

В Pythonpass это команда 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')
Запуск примера:
>> 1
  >> 2
  do somthing here 3
  >> 3
  >> 4
  >> 5
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")
    
# Это команда вне блока команд for.
print("End of example");
Output:
For loop example
Value of x = 3
  x^2 = 9
Value of x = 4
  x^2 = 16
Value of x = 5
  x^2 = 25
Value of x = 6
  x^2 = 36
finish for loop
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 :
    # Если команда break вызвана в цикле,
    # данная команда не будет выполнена.
    print("This command will not be executed!")
    
# Данная команда находится вне блока команд for.
print("End of example");
Output:
For loop example
Value of x = 3
Value of x = 4
Value of x = 5
Break!
End of example