Šajā rakstā jūs iemācīsities atkārtot elementu secību, izmantojot dažādas cilnes variantus.
Video: Python for Loop
Kas ir cilpa Python?
For cikls Python tiek izmantots, lai atkārtotu secību (saraksts, kopa, virkne) vai citus iterējamus objektus. Atkārtojumu par secību sauc par šķērsošanu.
Loka sintakse
for val secībā: Body of for
Šeit val
ir mainīgais, kas katrā atkārtojumā ņem secības iekšpusē esošo vērtību.
Loop turpinās, līdz mēs sasniedzam pēdējo vienumu secībā. Par cilpas pamattekstu atdala no pārējā koda, izmantojot ievilkumu.
Bloka diagramma par cilpu

Piemērs: Python for Loop
# Program to find the sum of all numbers stored in a list # List of numbers numbers = (6, 5, 3, 8, 4, 2, 5, 4, 11) # variable to store the sum sum = 0 # iterate over the list for val in numbers: sum = sum+val print("The sum is", sum)
Palaidot programmu, izeja būs:
Summa ir 48
Diapazona () funkcija
Izmantojot range()
funkciju, mēs varam ģenerēt skaitļu secību . range(10)
ģenerēs skaitļus no 0 līdz 9 (10 cipari).
Mēs varam arī definēt sākuma, pieturas un soļa lielumu kā range(start, stop,step_size)
. step_size pēc noklusējuma ir 1, ja tas nav norādīts.
range
Objekts ir "slinks", savā ziņā, jo tā nerada katru numuru, ka tas "ir", kad mēs veidojam to. Tomēr tas nav iteratora, jo tā atbalsta in
, len
un __getitem__
operācijas.
Šī funkcija neuzglabā visas vērtības atmiņā; tas būtu neefektīvi. Tātad tas atceras sākumu, pieturu, soļa lielumu un ģenerē nākamo numuru, atrodoties ceļā.
Lai piespiestu šo funkciju izvadīt visus vienumus, mēs varam izmantot šo funkciju list()
.
Nākamais piemērs to paskaidros.
print(range(10)) print(list(range(10))) print(list(range(2, 8))) print(list(range(2, 20, 3)))
Rezultāts
diapazons (0, 10) (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (2, 3, 4, 5, 6, 7) (2, 5, 8, 11, 14 , 17)
Mēs varam izmantot range()
funkciju for
cilpās, lai atkārtotu skaitļu secību. To var apvienot ar len()
funkciju, lai atkārtotu secību, izmantojot indeksēšanu. Šeit ir piemērs.
# Program to iterate through a list using indexing genre = ('pop', 'rock', 'jazz') # iterate over the list using index for i in range(len(genre)): print("I like", genre(i))
Rezultāts
Man patīk pops Man patīk roks Man patīk džezs
par cilpu ar citu
for
Cilpa var būt izvēles else
bloks, kā arī. else
Daļa tiek izpildīts, ja preces secībā izmanto cilpas izplūdi.
break
Atslēgvārds var izmantot, lai apturētu par cilpu. Šādos gadījumos pārējā daļa tiek ignorēta.
Tādējādi daļa for for loop darbojas, ja nenotiek pārtraukums.
Šeit ir piemērs, lai to ilustrētu.
digits = (0, 1, 5) for i in digits: print(i) else: print("No items left.")
Palaidot programmu, izeja būs:
0 1 5 Nav atstāts neviens vienums.
Šeit for for loop drukā saraksta vienumus, līdz cilpa ir izsmelta. Kad for for cikls ir iztukšots, tas izpilda koda bloku else
un izdrukā nevienu vienumu.
Šo for… else
paziņojumu var izmantot kopā ar break
atslēgvārdu, lai palaistu else
bloku tikai tad, kad break
atslēgvārds netika izpildīts. Ņemsim piemēru:
# program to display student's marks from record student_name = 'Soyuj' marks = ('James': 90, 'Jules': 55, 'Arthur': 77) for student in marks: if student == student_name: print(marks(student)) break else: print('No entry with that name found.')
Rezultāts
Nav atrasts neviens ieraksts ar šo nosaukumu.