Python break, continue, pass оператори з прикладами

⚡ Розумний підсумок

Python Оператори break, continue та pass керують потоком циклів. Оператор break завершує цикл, continue пропускає поточну ітерацію, а pass діє як заповнювач, який нічого не робить під час виконання всередині циклів, функцій або класів.

  • 🔘 Перерву: Оператор break негайно зупиняє цикл і переміщує керування на перший рядок після нього.
  • ☑️ Продовжити: Оператор continue пропускає решту поточної ітерації та запускає наступну.
  • Пропуск: Оператор pass нічого не робить і працює як заповнювач для коду, доданого пізніше.
  • 🧪 Вкладені цикли: Перерва або продовження циклу впливає лише на найвнутрішній цикл, залишаючи зовнішні цикли виконуваними.
  • 🛠️ Обидва цикли: Усі три оператори працюють всередині циклів for та while, змінюючи звичайний потік ітерацій.
  • 🤖 Допомога ШІ: Асистенти ШІ та GitHub Copilot пропонують та пояснюють правильне використання break, continue та pass.

Python break, continue, pass оператори

Концепція циклів доступна майже у всіх мовах програмування. Python цикли допомагають перебирати список, кортеж, рядок, словник і набір. Підтримується два типи циклів Python «для» і «поки». Блок коду виконується кілька разів усередині циклу, доки умова не виконається.

Інструкції керування циклом переривають потік виконання та завершують/пропускають ітерацію відповідно до наших потреб. Python break і continue використовуються всередині циклу, щоб змінити потік циклу від стандартної процедури.

Цикл for або while призначений для повторення, доки задана умова не виконається. Коли ви використовуєте оператор break або continue, потік циклу змінюється з звичайного.

Python заява про перерву

Оператор break піклується про завершення циклу, в якому він використовується. Якщо оператор break використовується всередині вкладених циклів, поточний цикл припиняється, і потік продовжиться з наступним кодом, який йде після циклу.

Блок-схема оператора break така:

Python заява про перерву

Нижче наведено етапи блок-схеми.

Крок 1) Починається виконання циклу.

Крок 2) Якщо умова циклу істинна, буде виконано крок 2, на якому буде виконано тіло циклу.

Крок 3) Якщо в тілі циклу є оператор break, цикл завершиться та перейде до кроку 6.

Крок 4) Після того, як умова циклу виконана та виконана, він переходить до наступної ітерації на кроці 4.

Крок 5) Якщо умова циклу хибна, цикл вийде та перейде до кроку 6.

Крок 6) Кінець петлі.

Потік виконання оператора Break

Коли цикл for починає виконуватися, він перевіряє умову if. Якщо правда, виконується оператор break, і цикл for завершується. Якщо умова хибна, виконується код усередині циклу for.

Потік виконання оператора Break

Коли виконується цикл while, він перевіряє умову if; якщо це правда Оператор break виконується, і цикл while завершується. Якщо умова хибна, код усередині циклу while буде виконано.

Потік виконання оператора Break

Приклад: оператор Break всередині циклу for

Список my_list = ['Siya', 'Tiya', 'Guru', 'Дакш', 'Рія', 'Guru'] виконується циклом for. Нас цікавить пошук імені 'Guru'зі списку my_list.'

Усередині циклу for умова if порівнює кожен елемент зі списку з іменем 'Guru'. Якщо умова стає істинною, виконається оператор break, і цикл завершиться.

Нижче показано робочий приклад використання оператора break:

my_list = ['Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 

for i in range(len(my_list)):
    print(my_list[i])
    if my_list[i] == 'Guru':
        print('Found the name Guru')
        break
        print('After break statement')

print('Loop is Terminated')

Очікуваний результат:

Siya
Tiya
Guru
Found the name Guru
Loop is Terminated

Приклад: оператор Break всередині циклу while

my_list = ['Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
i = 0

while True:
    print(my_list[i])
    if (my_list[i] == 'Guru'):
        print('Found the name Guru')
        break
        print('After break statement')
    i += 1

print('After while-loop exit')

Очікуваний результат:

Siya
Tiya
Guru
Found name Guru
After while-loop exit

Приклад: оператор Break у вкладених циклах

У прикладі ми маємо 2 цикли for. Обидва цикли for ітерують із діапазону від 0 до 3. У другому циклі for ми додали умову, де-in, якщо значення другого індексу циклу for дорівнює 2, він повинен бути порушений.

Тому через оператор break другий цикл for ніколи не повторюватиме 2 і 3.

for i in range(4):
    for j in range(4):          
        if j==2:    
            break
        print("The number is ",i,j);  

Очікуваний результат:

The number is  0 0
The number is  0 1
The number is  1 0
The number is  1 1
The number is  2 0
The number is  2 1
The number is  3 0
The number is  3 1

Python продовжити заяву

Команда продовжувати оператор пропускає код, який йде після нього, і елемент керування повертається до початку для наступної ітерації.

Синтаксис:

continue

Продовжити блок-схему

Python продовжити заяву

Нижче наведено етапи блок-схеми.

Крок 1) Починається виконання циклу.

Крок 2) Виконання коду всередині циклу буде виконано. Якщо всередині циклу є оператор-продовження, елемент керування повернеться до кроку 4, тобто до початку циклу для наступної ітерації.

Крок 3) Виконання коду всередині циклу буде виконано.

Крок 4) Якщо є оператор continue або виконання циклу всередині тіла завершено, буде викликана наступна ітерація.

Крок 5) Після завершення виконання циклу цикл вийде та перейде до кроку 7.

Крок 6) Якщо умова циклу на кроці 1 не виконується, він вийде з циклу та перейде до кроку 7.

Крок 7) Кінець петлі.

Продовжити потік виконання оператора

Цикл for проходить через заданий масив my_list. Усередині циклу for виконується умова if. Якщо умова правда, оператор continue буде виконано, і керування перейде до початку циклу для наступної ітерації.

Потік коду виглядає так:

Продовжити потік виконання оператора

Коли виконується цикл while, він перевіряє умову if, якщо вона є правда Оператор continue виконується. Для наступної ітерації елемент керування повернеться на початок циклу while. Якщо умова хибна, виконається код усередині циклу while.

Потік коду виглядає так:

Продовжити потік виконання оператора

Приклад: продовження всередині циклу for

for i in range(10):    
    if i == 7:
        continue  
    print("The Number is :" , i)

Очікуваний результат:

The Number is : 0
The Number is : 1
The Number is : 2
The Number is : 3
The Number is : 4
The Number is : 5
The Number is : 6
The Number is : 8
The Number is : 9

Приклад: продовження в циклі while

i = 0
while i <= 10:    
    if i == 7:
        i += 1
        continue  
    print("The Number is  :" , i)
    i += 1

Очікуваний результат:

The Number is  : 0
The Number is  : 1
The Number is  : 2
The Number is  : 3
The Number is  : 4
The Number is  : 5
The Number is  : 6
The Number is  : 8
The Number is  : 9
The Number is  : 10

Приклад: продовження всередині вкладеного циклу

У наведеному нижче прикладі показано використання 2 циклів for. Обидва цикли for ітерують із діапазону від 0 до 3. У другому циклі for існує умова, згідно з якою, якщо значення другого індексу циклу for дорівнює 2, воно має продовжувати. Тому через продовжувати оператор, другий цикл for пропустить ітерацію для 2 і продовжить для 3.

for i in range(4):
    for j in range(4):          
        if j==2:    
            continue
        print("The number is ",i,j);

Очікуваний результат:

The number is  0 0
The number is  0 1
The number is  0 3
The number is  1 0
The number is  1 1
The number is  1 3
The number is  2 0
The number is  2 1
The number is  2 3
The number is  3 0
The number is  3 1
The number is  3 3

Python заява про проходження

Python pass оператор використовується як заповнювач усередині циклів, функцій, класу, оператора if, який призначено для реалізації пізніше.

синтаксис

pass

Що таке оператор pass в Python?

Python pass є нульовим оператором. Коли Python інтерпретатор натрапляє на оператор pass, нічого не робить і ігнорується.

Коли використовувати оператор пропуску?

Вважайте, що у вас є функція або клас, тіло якого залишилося порожнім. Ви плануєте написати код у майбутньому. The Python інтерпретатор видасть помилку, якщо натрапить на порожнє тіло.

Коментар також можна додати в тіло функції або класу, але інтерпретатор ігнорує коментар і видасть помилку.

Інструкцію pass можна використовувати всередині тіла функції або тіла класу. Під час виконання інтерпретатор, коли він натрапляє на оператор пропуску, ігнорує та продовжує без жодної помилки.

Приклад: оператор передачі всередині функції

У прикладі пропуск додається всередину функції. Він буде виконано, коли буде викликана функція, як показано нижче:

def my_func():
    print('pass inside function')
    pass
my_func()

Очікуваний результат:

pass inside function

Приклад: оператор pass всередині класу

У наведеному нижче прикладі ми створили лише порожній клас, який має оператор print, за яким слідує оператор pass. Інструкція pass є ознакою того, що код всередині класу “My_Class” буде реалізовано в майбутньому.

classMy_Class:
print("Inside My_Class")    
pass

вихід:

Inside My_Class

Приклад: оператор pass всередині циклу

У наведеному нижче прикладі рядок 'Guru' використовується всередині циклу for. Умова if перевіряє символ 'r' та викликає оператор print, а потім оператор pass.

# Pass statement in for-loop
test = "Guru"
for i in test: 
    if i == 'r': 
        print('Pass executed') 
        pass
    print(i)

Очікуваний результат:

G
u
Pass executed
r
u

Приклад: передати оператор всередині циклу if

У прикладі the якщо цикл перевіряє значення a, і якщо умова істинна, він друкує оператор «pass executed», а потім pass.

a=1
if a==1:
    print('pass executed')
    pass

Очікуваний результат:

pass executed

Коли використовувати оператор break і continue?

  • A перерву Оператор, який використовується всередині циклу, завершить цикл і завершить роботу. Якщо використовувати всередині вкладених циклів, він вирветься з поточного циклу.
  • A продовжувати Інструкція зупинить поточне виконання, якщо використовується всередині циклу, і елемент керування повернеться до початку циклу.

Основна відмінність між інструкцією break і continue полягає в тому, що коли зустрічається ключове слово break, воно виходить із циклу.

У разі ключового слова continue поточну ітерацію, яка виконується, буде зупинено, і вона продовжить наступну ітерацію.

Поширені запитання

Оператор continue пропускає решту поточної ітерації циклу та переходить до наступної. Оператор pass взагалі нічого не робить — це лише заповнювач, який забезпечує синтаксично коректність циклу, функції або класу.

Оператор break завершує роботу лише внутрішнього циклу, який його містить, тому будь-які зовнішні цикли продовжують виконуватися. Щоб одночасно завершити роботу кількох циклів, використовуйте змінну-прапорець або перемістіть цикли у функцію та поверніть значення.

Так. Блок циклу else виконується лише тоді, коли цикл завершується нормально без виконання перерви. Він корисний для логіки пошуку, наприклад, для виведення повідомлення про не знайдено після перевірки кожного елемента в послідовності.

Python викликає помилку SyntaxError, оскільки оператори break та continue дійсні лише всередині циклу for або while. Якщо вам потрібен заповнювач поза циклом, використовуйте замість нього оператор pass, який дозволений будь-де, де очікується оператор.

Після виконання break або continue керування залишає поточну ітерацію, тому оператори, написані після них у наступних рядках, недоступні. У наведених вище прикладах виклик print() після break ніколи не виконується і фактично є мертвим кодом.

Оператор break виходить з найближчого циклу, що його оточує, але продовжує виконуватися функцію. Оператор return негайно виходить з усієї функції, передаючи назад значення та одночасно завершуючи кожен цикл усередині цієї функції.

Помічники штучного інтелекту, такі як ChatGPT, генерують код керування циклом на основі простого опису, пояснюють, чому цикл завершується передчасно, позначають неправильно розміщені оператори break або continue та пропонують, що найкраще відповідає вашій логіці: pass, continue або break.

Так. GitHub Copilot автоматично завершує операції break, continue та pass з коментаря або навколишнього коду. Інструменти Agentic AI йдуть далі, рефакторуючи цикл, видаляючи непрацюючий код після break та автоматично виправляючи помилки керування потоком у всьому файлі.

Підсумуйте цей пост за допомогою: