while в Python має важливу роль у створенні циклів, які виконуються, поки задана умова залишається істинною. Ось основні риси та особливості синтаксису циклу while:
- Умова: Перш за все, перед while ставиться умова. Поки ця умова істинна (True), тіло циклу while виконується.
- Тіло циклу: Це блок коду, який виконується доти, доки умова while залишається істинною. У тілі циклу можуть бути будь-які інструкції Python.
- Ітерація: Після виконання тіла циклу Python повертається до початку while і перевіряє умову ще раз. Цей процес триває до тих пір, поки умова не стане хибною (False).
- Ризик безкінечного циклу: Важливо бути обережним з умовою, щоб уникнути безкінечного циклу. Якщо умова завжди залишається істинною, цикл буде виконуватися нескінченно.
Приклад з відео:
#За допомогою циклу while ми можемо виконати набір операторів
#поки умова є істинною
iterationVar = 1
while iterationVar <= 5:
print("iterationVar equals ", iterationVar)
iterationVar+=1
print("Out of cycle: iterationVar equals ", iterationVar)
Break у циклі While
У Python оператор break використовується для припинення виконання найближчого об’єкта циклу (зокрема і while), в якому він знаходиться. Ось основні аспекти використання оператора break:
- Ціль: break дозволяє негайно припинити виконання циклу, в якому він використовується. Після виконання break виконання програми переходить до наступної інструкції після циклу.
- Де використовується: break часто використовується для зупинки циклу, коли досягнуто певної умови, і додаткові ітерації не потрібні. Наприклад, це може стати потрібним, коли ви шукаєте певний елемент у списку або виконуєте обробку даних до досягнення певної умови.
Приклад з відео:
#За допомогою оператора break ми можемо зупинити
#цикл, навіть якщо умова while виконується
iterationVar = 1
while iterationVar <= 5:
print("iterationVar equals ", iterationVar)
if iterationVar == 3:
break
iterationVar+=1
Continue у циклі While
У Python оператор continue використовується для переходу до наступної ітерації циклу без виконання решти коду в тілі циклу для поточної ітерації. Ось основні аспекти використання оператора continue:
- Ціль: continue дозволяє перейти до наступної ітерації циклу, ігноруючи будь-які наступні інструкції у тілі циклу для поточної ітерації.
- Де використовується: continue зазвичай використовується, коли потрібно пропустити певні ітерації циклу через умови, які не потребують подальшого виконання коду циклу на поточній ітерації.
Приклад з відео:
#За допомогою оператора continue ми можемо
#зупинити поточну ітерацію та перейти на наступну
iterationVar = 1
while iterationVar <= 5:
if iterationVar == 3:
iterationVar+=1
continue
print("iterationVar equals ", iterationVar)
iterationVar+=1
Else у циклі While
В Python можна використовувати блок else з оператором while.
Приклад з відео:
#За допомогою оператора else ми можемо
#запустити блок коду один раз, коли умова більше не виконується
iterationVar = 1
while iterationVar<=5:
print("iterationVar equals ", iterationVar)
iterationVar+=1
else:
print("Out of the loop: iterationVar equals ", iterationVar)
Завдання
Приклад завдання з відео.
#---Гра «Вгадай число».
#---Створіть гру, яка дає гравцеві 3 спроби вгадати число
#---від 1 до 10
#---Якщо гравець вгадає правильно, він виграє
#---Інакше комп'ютер виграє
#---подумайте про псевдокод
#---створити числову змінну
#---створити змінну counterOfAttempts
#---створити змінну припущення
#---коротко поясніть правила гри
#---створити цикл while і використовувати counterOfAttempts як умову
#---отримати значення від гравця у змінній припущення
#---збільшити лічильник
#---перевірити правильність припущення.
#---якщо припущення неправильне, напишіть блок else
#---повідомити, що припущення невірне та скільки спроб залишилося
Варіант розв’язання:
#Гра «Вгадай число».
#Створіть гру, яка дає гравцеві 3 спроби вгадати число
#від 1 до 10
#Якщо гравець вгадає правильно, він виграє
#Інакше комп'ютер виграє
import random
#подумайте про псевдокод
#створити числову змінну
numberToGuess = random.randrange(1,11)
#create counterOfAttempts змінна
counterOfAttempts = 0
#створити змінну припущення
guessOfPlayer=0
#коротко поясніть правила гри
print("Try to guess a number from 1 to 10.")
print("You have ", 3-counterOfAttempts," attempts.")
#створити цикл while і використовувати counterOfAttempts як умову
while counterOfAttempts<3:
#отримати значення від гравця у змінній припущення
guessOfPlayer = int(input("Guess a number from 1 to 10. "))
#збільшити лічильник
counterOfAttempts+=1
#перевірити правильність припущення.
if guessOfPlayer==numberToGuess:
print("You have won. Congratulations.")
print("The number was {}.".format(numberToGuess))
break
#якщо припущення неправильне, напишіть блок else
else:
#повідомити, що здогадка невірна і скільки спроб залишилося
print("Wrong. You have ",3-counterOfAttempts," left.")
if counterOfAttempts==3:
print("You are out of attempts.")
print("You didn't guess correctly.")
print("The number was {}.".format(numberToGuess))
В цьому відео поговоримо про:
00:34 Цикл While
06:31 Break
09:40 Continue
18:15 Else