I denne artikel lærer du at kontrollere udførelsen af en sløjfe ved hjælp af sløjfekontroludtalelser som pause og fortsæt.
Python-programmering tilbyder to slags loop, for-loop og while-loop. Ved hjælp af disse sløjfer sammen med loopkontrolerklæringer som break og continue kan vi oprette forskellige former for loop.
Den uendelige løkke
Vi kan oprette en uendelig sløjfe ved hjælp af while-udsagn. Hvis tilstanden for mens loop altid er True
, får vi en uendelig løkke.
Eksempel # 1: Uendelig løkke ved hjælp af mens
# 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)
Produktion
Indtast et heltal: 3 Det dobbelte af 3 er 6 Indtast et heltal: 5 Det dobbelte af 5 er 10 Indtast et heltal: 6 Det dobbelte af 6 er 12 Indtast et heltal: Traceback (seneste opkald sidst):
Loop med tilstand øverst
Dette er en normal mens løkke uden pause udsagn. Tilstanden for mens sløjfen er øverst, og sløjfen slutter, når denne tilstand er False
.
Flowchart of Loop With Condition at Top
Eksempel 2: Sløjfe med tilstand øverst
# 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)
Når du kører programmet, vil output være:
Summen er 55
Loop med tilstand i midten
Denne form for løkke kan implementeres ved hjælp af en uendelig løkke sammen med et betinget brud mellem kroppen af løkken.
Flowchart of Loop med tilstand i midten
Eksempel 3: Sløjfe med tilstand i midten
# 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!")
Produktion
Indtast en vokal: r Det er ikke en vokal. Prøv igen! Indtast en vokal: 6 Det er ikke en vokal. Prøv igen! Indtast en vokal:, Det er ikke en vokal. Prøv igen! Indtast en vokal: u Tak!
Loop med tilstand i bunden
Denne form for løkke sikrer, at kroppen af sløjfen udføres mindst én gang. Det kan implementeres ved hjælp af en uendelig løkke sammen med en betinget pause i slutningen. Dette svarer til do… mens loop i C.
Flowchart of Loop med tilstand nederst
Eksempel 4: Sløjfe med tilstand nederst
# 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
Produktion
Tryk på enter for at kaste terningerne. Du har 1 kast igen? (Y / n) y Tryk på enter for at kaste terningerne. Du har 5 kast igen? (Y / n) n