В тази статия ще се научите да контролирате изпълнението на цикъл, като използвате команди за управление на цикъла като break и continue.
Програмирането на Python предлага два вида цикъл, цикълът for и цикълът while. Използвайки тези цикли заедно с команди за контрол на цикъла като break и continue, можем да създадем различни форми на цикъл.
Безкрайният цикъл
Можем да създадем безкраен цикъл, използвайки инструкция while. Ако условието на цикъл while е винаги True
, получаваме безкраен цикъл.
Пример # 1: Безкраен цикъл, използващ while
# An example of infinite loop # press Ctrl + c to exit from the loop while True: num = int(input("Enter an integer: ")) print("The double of",num,"is",2 * num)
Изход
Въведете цяло число: 3 Двойникът на 3 е 6 Въведете цяло число: 5 Двойникът на 5 е 10 Въведете цяло число: 6 Двойникът на 6 е 12 Въведете цяло число: Traceback (последното последно обаждане):
Примка с състояние в горната част
Това е нормален цикъл while без инструкции за прекъсване. Състоянието на цикъл while е отгоре и цикълът се прекратява, когато това условие е False
.
Блок-схема на контур с условие отгоре
Пример # 2: Цикъл със състояние в горната част
# Program to illustrate a loop with the condition at the top # Try different numbers n = 10 # Uncomment to get user input #n = int(input("Enter n: ")) # initialize sum and counter sum = 0 i = 1 while i <= n: sum = sum + i i = i+1 # update counter # print the sum print("The sum is",sum)
Когато стартирате програмата, изходът ще бъде:
Сумата е 55
Примка с състояние в средата
Този вид цикъл може да бъде реализиран с помощта на безкраен цикъл, заедно с условно прекъсване между тялото на цикъла.
Блок-схема на контур с условие в средата
Пример # 3: Примка с условие в средата
# Program to illustrate a loop with condition in the middle. # Take input from the user untill a vowel is entered vowels = "aeiouAEIOU" # infinite loop while True: v = input("Enter a vowel: ") # condition in the middle if v in vowels: break print("That is not a vowel. Try again!") print("Thank you!")
Изход
Въведете гласна: r Това не е гласна. Опитай пак! Въведете гласна: 6 Това не е гласна. Опитай пак! Въведете гласна:, Това не е гласна. Опитай пак! Въведете гласна: u Благодаря!
Примка с условие в долната част
Този вид цикъл гарантира, че тялото на цикъла се изпълнява поне веднъж. Той може да бъде реализиран с помощта на безкраен цикъл заедно с условно прекъсване в края. Това е подобно на цикъла do … while в C.
Блок-схема на контур с условие отдолу
Пример # 4: Примка с условие в долната част
# Python program to illustrate a loop with condition at the bottom # Roll a dice untill user chooses to exit # import random module import random while True: input("Press enter to roll the dice") # get a number between 1 to 6 num = random.randint(1,6) print("You got",num) option = input("Roll again?(y/n) ") # condition if option == 'n': break
Изход
Натиснете enter, за да хвърлите заровете Имате ли 1 хвърляне отново? (Y / n) y Натиснете enter, за да хвърлите заровете Имате 5 хвърляне отново? (Y / n) n