Серия учебных пособий по 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