Šiame straipsnyje jūs išmoksite valdyti ciklo vykdymą naudodami ciklo valdymo sakinius, pvz., „Nutraukti ir tęsti“.
„Python“ programavimas siūlo dviejų rūšių kilpas: „for loop“ ir „while“ kilpas. Naudodami šias kilpas kartu su ciklo valdymo sakiniais, pavyzdžiui, pertraukimas ir tęsimas, galime sukurti įvairias ciklo formas.
Begalinė kilpa
Mes galime sukurti begalinę kilpą naudodami „while“. Jei „while“ ciklo būklė visada yra True
, gauname begalinę kilpą.
1 pavyzdys: begalinė kilpa naudojant 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)
Rezultatas
Įveskite sveiką skaičių: 3 Dvigubas 3 yra 6 Įveskite sveiką skaičių: 5 Dvigubas iš 5 yra 10 Įveskite sveiką skaičių: 6 Dvigubas iš 6 yra 12 Įveskite sveikąjį skaičių: Traceback (paskutinis skambutis paskutinis):
Kilpa su sąlyga viršuje
Tai yra įprasta ciklo trukmė be pertraukų teiginių. „Loop“ būklė yra viršuje, o ciklas baigiasi, kai ši sąlyga yra False
.
Kontūro su sąlyga viršuje schema
2 pavyzdys: kilpa su sąlyga viršuje
# 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)
Kai paleisite programą, išvestis bus:
Suma lygi 55
Kilpa su sąlyga viduryje
Tokia kilpa gali būti įgyvendinta naudojant begalinę kilpą kartu su sąlygine pertrauka tarp kilpos kūno.
Kontūro su sąlyga viduryje schema
3 pavyzdys: kilpa su sąlyga viduryje
# 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!")
Rezultatas
Įveskite balsį: r Tai nėra balsis. Bandyk iš naujo! Įveskite balsį: 6 Tai nėra balsis. Bandyk iš naujo! Įveskite balsį:, Tai nėra balsis. Bandyk iš naujo! Įveskite balsį: u Ačiū!
Kilpa su sąlyga apačioje
Tokia kilpa užtikrina, kad kilpos kūnas būtų vykdomas bent kartą. Tai gali būti įgyvendinta naudojant begalinę kilpą kartu su sąlygine pertrauka pabaigoje. Tai panašu į „do… while loop“ C.
Kontūro su sąlyga apačioje schema
4 pavyzdys: kilpa su sąlyga apačioje
# 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
Rezultatas
Norėdami mesti kauliukus, paspauskite „Enter“. Turite dar kartą 1 ritinį? (Taip / ne) y Paspauskite „Enter“, kad sukite kauliukus. Vėl gavote 5 metimus? (Taip / ne) n