Python Цикли For & While: оператор Enumerate, Break, Continue
Що таке Loop?
Цикли можуть виконувати блок коду кілька разів, доки не буде виконано певну умову. Їх використання досить поширене в програмуванні. На відміну від інших мов програмування, які мають цикл For, while, dowhile тощо.
Що таке цикл For?
Цикл for використовується для повторення елементів послідовності. Його часто використовують, коли у вас є фрагмент коду, який ви хочете повторити «n» кількість разів.
Що таке цикл While?
Цикл While використовується для повторення блоку коду. Замість того, щоб запускати блок коду один раз, він виконує блок коду кілька разів, доки не буде виконано певну умову.
Як використовувати «While Loop»
Цикл While виконує те ж саме, що і оператор if, але замість того, щоб запускати блок коду один раз, він повертається до точки, з якої почався код, і повторює весь процес знову.
синтаксис
while expression Statement
Приклад:
# #Example file for working with loops # x=0 #define a while loop while(x <4): print(x) x = x+1
Очікуваний результат:
0 1 2 3
- Кодовий рядок 4: змінна x має значення 0
- Рядок коду 7: Цикл While перевіряє умову x<4. Поточне значення x дорівнює 0. Умова виконується. Потік керування входить у цикл while
- Кодовий рядок 8: друкується значення x
- Кодовий рядок 9: x збільшується на 1. Потік керування повертається до рядка 7. Тепер значення x дорівнює 1, що менше за 4. Умова виконується, і знову виконується цикл while. Це продовжується, доки x не стане 4, а умова while стане хибною.
Як використовувати «цикл For»
In Python, викликаються цикли for ітератори.
Як і цикл while, цикл For також використовується для повторення програми.
Але на відміну від циклу while, який залежить від умови true чи false. «Цикл For» залежить від елементів, які він має ітерувати.
Приклад:
# #Example file for working with loops # x=0 #define a while loop # while(x <4): # print x # x = x+1 #Define a for loop for x in range(2,7): print(x)
Очікуваний результат:
2 3 4 5 6
Цикл For повторює число, оголошене в діапазоні.
Наприклад,
Для петлі для x в діапазоні (2,7)
Коли цей код виконується, він друкує число від 2 до 7 (2,3,4,5,6). У цьому коді число 7 не враховується в межах діапазону.
For Loops також можна використовувати для набору інших речей, а не лише для числа. Ми побачимо тонкий у наступному розділі.
Як використовувати цикл For для рядка
На цьому кроці ми побачимо, як «цикли for» також можна використовувати для інших речей, окрім чисел.
Приклад:
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print(m)
Очікуваний результат:
Jan Feb Mar April May June
Кодовий рядок 3: ми зберігаємо місяці («січень, лютий, березень, квітень, травень, червень») у змінних місяцях
Рядок коду 4: Ми повторюємо цикл for над кожним значенням у місяцях. Поточне значення Months зберігається у змінній m
Кодовий рядок 5: надрукувати місяць
Як використовувати оператори break у циклі For
Точка зупину — це унікальна функція в циклі For, яка дозволяє перервати або припинити виконання циклу for
Приклад:
#use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): if (x == 15): break #if (x % 2 == 0) : continue print(x)
Очікуваний результат:
10 11 12 13 14
У цьому прикладі ми оголосили числа від 10 до 20, але ми хочемо, щоб наш цикл for закінчувався під номером 15 і зупиняв подальше виконання. Для цього ми оголошуємо функцію break, визначивши (x==15): break, тому, як тільки код викликає число 15, він завершує програму. Рядок коду 10 оголошує змінну x між діапазонами (10, 20)
- Кодовий рядок 11 оголошує умову для точки зупину на x==15,
- Кодовий рядок 12 перевіряє та повторює кроки, доки не досягне числа 15
- Кодовий рядок 13 Вивести результат у вивід
Як використовувати «інструкцію продовження» в циклі For
Функція Continue, як вказує її назва, припинить поточну ітерацію циклу for, АЛЕ продовжить виконання решти ітерацій.
Приклад
#use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): #if (x == 15): break if (x % 5 == 0) : continue print(x)
Очікуваний результат:
11 12 13 14 16 17 18 19
Оператор Continue можна використовувати в циклі for, коли ви хочете отримати певне значення зі списку.
У нашому прикладі ми оголосили значення 10-20, але між цими числами нам потрібні лише ті числа, які НЕ діляться на 5 або іншими словами, які не дають нуля при діленні на 5.
Отже, у нашому діапазоні (10,11, 12….19,20) потрапляє лише 3 числа (10,15,20), які діляться на 5, а решта – ні.
Таким чином, за винятком номерів 10,15, 20 і XNUMX, цикл for не буде продовжуватися і виводитиме ці числа як вихідні дані.
- Рядок коду 10 оголошує змінну x для діапазону (10, 20)
- Кодовий рядок 12 оголошує умову для x, поділеного на 5=0, продовження
- Рядок коду 13 вивести результат
Що таке enumerate(). Python?
enumerate() НА PYTHON це вбудована функція, яка використовується для призначення індексу кожному елементу ітерованого об’єкта. Він додає цикл до ітерованих об’єктів, відстежуючи поточний елемент і повертаючи об’єкт у формі перерахування. Цей об’єкт можна використовувати в циклі for, щоб перетворити його на список за допомогою методу list().
Приклад:
Функція перерахування використовується для нумерації або індексування членів у списку.
Припустімо, ми хочемо виконати нумерацію для нашого місяця (січень, лютий, березень, ….червень), тому ми оголошуємо змінну i, яка перераховує числа, тоді як m виводить номер місяця у списку.
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print(i,m) # use the break and continue statements #for x in range (10,20): #if (x == 15): break #if (x % 5 == 0) : continue #print x
Очікуваний результат:
0 Jan 1 Feb 2 Mar 3 April 4 May 5 June
Коли код виконується, вихід функції enumerate повертає назву місяця з номером індексу, наприклад (0-січень), (1- лютий), (2- березень) тощо.
- Рядок коду 3 оголошує список місяців [ січень, лютий,… червень]
- Рядок коду 4 оголошує змінні i та m для циклу For
- Кодовий рядок 5 надрукує результат і знову введе цикл For для решти місяців для перерахування
Практичний приклад
Давайте подивимося ще один приклад циклу для повторення того самого оператора знову і знову.
Python петля | Робочий код для всіх вправ |
---|---|
Код для циклу while |
x=0 while (x<4): print (x) x= x+1 |
Простий приклад для циклу |
x=0 for x in range (2,7): print (x) |
Використання циклу for у рядку |
Months = ["Jan","Feb","Mar","April","May","June"] for m in (Months): print (m) |
Використовуйте оператор break у циклі for |
for x in range (10,20): if (x == 15): break print (x) |
Використання оператора Continue у циклі for |
for x in range (10,20): if (x % 5 == 0): continue print (x) |
Код для «функції перерахування» з «циклом for» |
Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print (i,m) |
Як використовувати цикл for для повторення одного і того ж оператора знову і знову
Ви можете використовувати цикл for навіть для повторення того самого оператора знову і знову. Тут у прикладі ми тричі вивели слово «guru99».
Приклад: щоб повторити той самий оператор кілька разів, ми оголосили число у змінній i (i у 123). Отже, коли ви запускаєте код, як показано нижче, він друкує оператор (guru99), який у багато разів перевищує число, оголошене для нашої змінної в ( i in 123).
for i in '123': print ("guru99",i,)
Очікуваний результат:
guru99 1 guru99 2 guru99 3
Як і інші мови програмування, Python також використовує цикл, але замість використання діапазону різних циклів він обмежений лише двома циклами «While» і «for».
- Цикли While виконуються залежно від того, чи є умовний оператор істинним чи хибним.
- Цикли For називаються ітераторами, вони повторюють елемент на основі набору умов
- Python Цикли for також можна використовувати для набору різних інших речей (вказуючи набір елементів, які ми хочемо перейти в цикл)
- Точка зупину використовується в циклі для переривання або завершення програми в будь-якій конкретній точці
- Оператор Continue продовжить друкувати оператор і виведе результат відповідно до встановленої умови
- Функція Enumerate у циклі for повертає член колекції, яку ми розглядаємо, з номером індексу
Python 2 Приклад
Наведені вище коди є Python 3 приклади, якщо ви хочете ознайомитися Python 2, будь ласка, розгляньте наступний код.
# How to use "While Loop" #Example file for working with loops # x=0 #define a while loop while(x <4): print x x = x+1 #How to use "For Loop" #Example file for working with loops # x=0 #define a while loop # while(x <4): # print x # x = x+1 #Define a for loop for x in range(2,7): print x #How to use For Loop for String #use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print m #How to use break statements in For Loop #use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): if (x == 15): break #if (x % 2 == 0) : continue print x #How to use "continue statement" in For Loop #use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): #if (x == 15): break if (x % 5 == 0) : continue print x #How to use "enumerate" function for "For Loop" #use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print i,m # use the break and continue statements #for x in range (10,20): #if (x == 15): break #if (x % 5 == 0) : continue #print x
вихід:
0 1 2 3 2 3 4 5 6 Jan Feb Mar April May June 10 11 12 13 14 11 12 13 14 16 17 18 19 0 Jan 1 Feb 2 Mar 3 April 4 May 5 June