Серия учебных пособий по Python: обучение использованию операторов break, continue и pass.

Привет, любители Python!

В прошлой статье мы поговорили о цикле Python while, а также потренировались на некоторых примерах. В этой статье мы поговорим об операторах Python break, continue и pass.

Когда мы пишем код, иногда нам нужно изменить нормальный поток цикла в ответ на возникновение события. В такой ситуации мы можем либо выйти из цикла, либо продолжить следующую итерацию цикла, пропуская оставшиеся операторы в цикле.

С помощью оператора break мы можем выйти из цикла и передать управление оператору, следующему за телом цикла. Оператор continue помогает нам передать управление следующей итерации цикла. При выполнении инструкции continue код, который появляется в теле цикла после инструкции continue, пропускается.

Давайте разберемся с этими утверждениями на примере. Тогда вам было бы понятнее. В этом примере мы пишем программу Python для печати квадратов целого числа. Ввод должен быть получен от пользователя. Если пользователь вводит пустую строку, прервите цикл и перейдите к концу инструкции.

while True:
    num = input("Enter the number: ")
    if num == "":
        break
    number = int(num)
    print("The square of the number ",number,"  is: ", number*number)
print("User entered a null string")

Вывод кода:

>>> Enter the number: 5
The square of the number  5   is:  25
Enter the number: 6
The square of the number  6   is:  36
Enter the number: 7
The square of the number  7   is:  49
Enter the number: 
User entered a null string

Теперь вы можете ясно видеть, как работает оператор break. Я запустил цикл while, и условие цикла while установлено на True. Это означает, что мы находимся в бесконечном цикле. В этом цикле функция ввода будет запрашивать значение целого числа бесконечное количество раз, пока оно не прерывается пустой строкой или вручную.

Мы устанавливаем наше условие в условии оператора if: если пользователь вводит значение пустой строки, то прерывает цикл while и перемещает оператор печати (последняя строка нашего кода). С помощью оператора break здесь мы выходим из цикла и передаем управление следующему оператору, следующему за телом цикла.

Возьмем другой пример. В этом примере вам нужно написать функцию Python для вывода процентных оценок старых учеников. Давайте код напишем, тогда будет понятнее.

def main():
    check = input("Are you a new student(yes/no): ")
    if check == "yes":
        pass
    elif check == "no":
        totalMarks = 0
        numOfSub = 0
        while True:
            marks = input( 'Marks for subject ' + str(numOfSub +1) + ": ")
            if marks == '':
                break
            marks = float(marks)
            if marks < 0 or marks >100:
                print("Invalid marks")
                continue
            numOfSub = numOfSub+1
            totalMarks = totalMarks + marks
        percentage = totalMarks/numOfSub
        print("Total marks: ", totalMarks)
        print("Number of Subject is: ", numOfSub)
        print("Percentage: ", round(percentage,2))
    else:
        print("enter a valid response")
main()

Вывод приведенного выше кода:

>>> Are you a new student(yes/no): no
Marks for subject 1: 56
Marks for subject 2: 68
Marks for subject 3: 98
Marks for subject 4: 88
Marks for subject 5: 94
Marks for subject 6: 
Total marks:  404.0
Number of Subject is:  5
Percentage:  80.8
>>> Are you a new student(yes/no): yes
>>> Are you a new student(yes/no): sdgfs
enter a valid response
>>> Are you a new student(yes/no): no
Marks for subject 1: 45
Marks for subject 2: 566
Invalid marks
Marks for subject 2: 56
Marks for subject 3: 65
Marks for subject 4: 
Total marks:  166.0
Number of Subject is:  3
Percentage:  55.33

В основной функции мы сначала проверяем новых или старых студентов. Если ученик старый, мы продолжаем выставлять оценки по предметам. Мы берем введенные оценки и убеждаемся, что они лежат между 0 и 100. Если пользователь вводит оценки больше 100 или меньше 0, программа распечатывает «Недействительные оценки» и продолжает работу с оценками других предметов. Здесь мы используем оператор continue.

Если пользователь вводит нулевую строку, цикл прерывается, мы выходим из цикла while и распечатываем процентное значение. Здесь мы используем оператор break.

Если ученик новый, мы просто передаем это условие. Потому что иногда мы можем захотеть опустить детали вычислений в теле функции или в некоторых условных операторах, чтобы заполнить их позже. Оператор pass позволяет программе пройти через этот фрагмент кода без выполнения какого-либо кода. Здесь, в этом случае, мы будем заполнять код для новых студентов в какой-то момент, но не сейчас.

Вы можете попрактиковаться в большем количестве вопросов:

Наименьшее общее кратное (НОК) в Python

Функция Python для проверки, является ли число простым или нет

Ну вот и все для этой статьи.

Если эта статья кажется вам информативной, обязательно подпишитесь на нее и поделитесь ею со своим компьютерным сообществом.

Здравствуйте, меня зовут Рохит Кумар Тхакур. Я открыт для фриланса. Я создаю проекты React Native, а в настоящее время работаю над Python Django. Не стесняйтесь обращаться ко мне по адресу ([email protected]).

Больше контента на plainenglish.io