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 valje 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
Diagram poteka za zanko v Pythonu
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.
rangeObjekt "leni" v pomenu, saj ne ustvarja vsako številko, ki je "vsebuje", ko smo ga ustvarili. Vendar pa to ni iterator saj podpira in, lenin __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 forzankah 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
forZanka lahko izbirno elseblok kot dobro. elseDel se izvaja, če so postavke v zaporedju uporablja pri zanka izpuhov.
Ključno breakbesedo 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 elsein natisne No items left.
Ta for… elsestavek se lahko uporablja s breakključno besedo za zagon elsebloka le, če breakključ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.








