Цикли використовуються для повторення виконання певного блоку коду. Наприклад, якщо нам потрібно показати певне повідомлення 100 разів, ми можемо використати цикл. Це простий приклад, але за допомогою циклів ми можемо зробити багато всього.
На попередньому уроці ми розглядали цикл for в Python. Тепер ми розглянемо цикл while.
Цикл while в Python
Цикл while використовується для виконання блоку коду доти, доки не буде досягнуто певної умови.
Синтаксис циклу while:
|
1 2 |
while умова: # блок коду для виконання |
Алгоритм дій:
Спочатку цикл while обробляє умову.
Якщо умова обчислюється як True, то виконується код всередині циклу while.
Потім умова повторно обробляється. Цей процес триває доти, доки умова не стане False.
Якщо умова обчислюється як False, цикл завершує своє виконання.
Блок-схема виконання циклу while в Python:

Розглянемо приклад використання циклу while в Python:
|
1 2 3 4 5 6 7 8 9 10 |
# У цій програмі ми виводимо числа від 1 до 5 # Ініціалізація змінних i = 1 n = 5 # Цикл while з i = 1 до 5 while i <= n: print(i) i = i + 1 |
Результат:
1
2
3
4
5
Ось як працює дана програма:
| Змінні | Умова: i <= n | Дія |
| i = 1 n = 5 |
True | Виводиться 1. Змінна i збільшується до 2. |
| i = 2 n = 5 |
True | Виводиться 2. Змінна i збільшується до 3. |
| i = 3 n = 5 |
True | Виводиться 3. Змінна i збільшується до 4. |
| i = 4 n = 5 |
True | Виводиться 4. Змінна i збільшується до 5. |
| i = 5 n = 5 |
True | Виводиться 5. Змінна i збільшується до 6. |
| i = 6 n = 5 |
False | Цикл завершено. |
Розглянемо ще один приклад використання циклу while в Python:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# У цій програмі ми обчислюємо суму чисел доти, # доки користувач не введе 0 total = 0 number = int(input('Enter a number: ')) # Додаємо числа, доки number не дорівнюватиме 0 while number != 0: total += number # total = total + number # Запитуємо користувацький ввід number = int(input('Enter a number: ')) print('total =', total) |
Результат:
Enter a number: 12
Enter a number: 4
Enter a number: -5
Enter a number: 0
total = 11
Тут цикл while повторюється доти, доки користувач не введе 0. Коли користувач вводить 0, умова перевірки обробляється як False, і цикл завершується.
Нескінченний цикл while у Python
Якщо умова циклу завжди істинна (True), цикл виконуватиметься нескінченну кількість разів (поки не заповниться пам’ять). Наприклад:
|
1 2 3 4 5 |
age = 32 # Умова для перевірки завжди дорівнює True while age > 18: print('You can vote') |
Тут умова завжди обробляється як True. Отже, тіло циклу виконуватиметься нескінченну кількість разів.
Цикл while з частиною else в Python
У Python цикл while може мати необов’язковий блок else, який виконуватиметься після того, як умова циклу стане False.
|
1 2 3 4 5 6 7 |
counter = 0 while counter < 3: print('Inside loop') counter = counter + 1 else: print('Inside else') |
Результат:
Inside loop
Inside loop
Inside loop
Inside else
Блок else не виконуватиметься, якщо цикл while зупинено оператором break. Наприклад:
|
1 2 3 4 5 6 7 8 9 10 11 12 |
counter = 0 while counter < 3: # Цикл завершує своє виконання через оператор break. # Блок else не виконується if counter == 1: break print('Inside loop') counter = counter + 1 else: print('Inside else') |
Результат:
Inside loop
for проти while в Python
Цикл for зазвичай використовується, коли відома кількість ітерацій. Наприклад:
|
1 2 3 |
# Даний цикл повторюється 4 рази (від 0 до 3) for i in range(4): print(i) |
Цикл while зазвичай використовується, коли кількість ітерацій невідома. Наприклад:
|
1 2 |
while умова: # Код виконується доти, доки умова не стане False |

(33 оцінок, середня: 4,67 з 5)