V tem članku se boste naučili ponavljati zaporedje elementov z različnimi različicami zanke for.
Video: Python za zanko
Kaj je for zanka v Pythonu?
Zanka for v Pythonu se uporablja za iteracijo po zaporedju (seznam, nabor, niz) ali drugih ponovljivih predmetih. Iteracija nad zaporedjem se imenuje prehod.
Sintaksa for Loop
za val v zaporedju: Telo for
Tu val
je spremenljivka, ki zavzame vrednost postavke znotraj zaporedja na vsaki ponovitvi.
Zanka se nadaljuje, dokler ne pridemo do zadnjega elementa v zaporedju. Telo zanke for je ločeno od ostale kode z vdolbinami.
Diagram poteka za Loop

Primer: Python za zanko
# 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)
Ko zaženete program, bo rezultat:
Vsota je 48
Funkcija obsega ()
S pomočjo range()
funkcije lahko ustvarimo zaporedje števil . range(10)
bo ustvaril številke od 0 do 9 (10 številk).
Velikost začetka, postanka in koraka lahko določimo tudi kot range(start, stop,step_size)
. privzete vrednosti step_size na 1, če ni na voljo.
range
Objekt "leni" v pomenu, saj ne ustvarja vsako številko, ki je "vsebuje", ko smo ga ustvarili. Vendar pa to ni iterator saj podpira in
, len
in __getitem__
operacije.
Ta funkcija ne shrani vseh vrednosti v pomnilnik; bilo bi neučinkovito. Tako si zapomni začetek, zaustavitev, velikost koraka in na poti ustvari naslednjo številko.
Če želimo funkcijo prisiliti, da izpiše vse elemente, jo lahko uporabimo list()
.
Naslednji primer bo to pojasnil.
print(range(10)) print(list(range(10))) print(list(range(2, 8))) print(list(range(2, 20, 3)))
Izhod
obseg (0, 10) (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (2, 3, 4, 5, 6, 7) (2, 5, 8, 11, 14 , 17)
range()
Funkcijo v for
zankah lahko uporabimo za ponovitev zaporedja števil. Lahko se kombinira s len()
funkcijo za ponavljanje skozi zaporedje z uporabo indeksiranja. Tu je primer.
# 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))
Izhod
Všeč mi je pop Všeč mi je rock Všeč mi je jazz
za zanko z else
for
Zanka lahko izbirno else
blok kot dobro. else
Del se izvaja, če so postavke v zaporedju uporablja pri zanka izpuhov.
Ključno break
besedo lahko uporabite za zaustavitev zanke for. V takih primerih se drugi del prezre.
Zato se del zanke for zažene, če ne pride do preloma.
Tu je primer, ki to ponazarja.
digits = (0, 1, 5) for i in digits: print(i) else: print("No items left.")
Ko zaženete program, bo rezultat:
0 1 5 Ni preostalih predmetov.
Tu zanka for natisne elemente s seznama, dokler zanka ne izčrpa. Ko se zanka for izčrpa, izvede blok kode v else
in natisne No items left.
Ta for… else
stavek se lahko uporablja s break
ključno besedo za zagon else
bloka le, če break
ključna beseda ni bila izvedena. Vzemimo primer:
# 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.')
Izhod
Najden ni noben vnos s tem imenom.