Tässä artikkelissa opit toistamaan elementtisarjan käyttämällä silmukan eri muunnelmia.
Video: Python for Loop
Mikä on silmukalle Pythonissa?
Pythonin for-silmukkaa käytetään iteroimaan sekvenssin (luettelo, dupleksi, merkkijono) tai muiden iteroitavien objektien yli. Jakson toistamista kutsutaan kulkemiseksi.
Loopin syntaksi
for val peräkkäin: for of
Tässä valon muuttuja, joka ottaa kohteen arvon sekvenssistä kussakin iteraatiossa.
Silmukka jatkuu, kunnes saavutamme sarjan viimeisen kohteen. For -silmukan runko erotetaan muusta koodista sisennyksen avulla.
Vuokaavio silmukasta
Vuokaavio Loopista Pythonissa
Esimerkki: 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)
Kun suoritat ohjelmaa, tulos on:
Summa on 48
Alue () -toiminto
Voimme luoda numerosarjan range()funktion avulla. range(10)tuottaa numeroita 0-9 (10 numeroa).
Voimme myös määrittää alku-, lopetus- ja askelkokon range(start, stop,step_size). step_size on oletusarvoisesti 1, jos sitä ei toimiteta.
rangeKohde on "laiska" tavallaan, koska se ei tuota jokaisen numeron, että se "sisältää", kun luomme sen. Kuitenkin, se ei ole iteraattorin koska se tukee in, lenja __getitem__toimintaa.
Tämä toiminto ei tallenna kaikkia arvoja muistiin; se olisi tehotonta. Joten se muistaa alun, lopetuksen, askelkokon ja luo seuraavan numeron tien päällä.
Pakottaaksemme tämän toiminnon tuottamaan kaikki kohteet, voimme käyttää toimintoa list().
Seuraava esimerkki selventää tätä.
print(range(10)) print(list(range(10))) print(list(range(2, 8))) print(list(range(2, 20, 3)))
Tuotos
alue (0, 10) (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) (2, 3, 4, 5, 6, 7) (2, 5, 8, 11, 14 , 17)
Voimme käyttää range()funktiota forsilmukoina iteroimaan numerosarjan läpi. Se voidaan yhdistää len()toimintoon iteroida sekvenssi indeksoinnin avulla. Tässä on esimerkki.
# 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))
Tuotos
Pidän popista Pidän rockista Pidän jazzista
silmukalle muun kanssa
forSilmukka voi olla valinnainen elselohko samoin. elseOsa suoritetaan, jos tuotetta käytetty sekvenssi silmukka pakokaasuihin.
breakAvainsanaa voidaan pysäyttää silmukka. Tällaisissa tapauksissa toinen osa jätetään huomiotta.
Siksi for for -silmukan toinen osa suoritetaan, jos katkeamista ei tapahdu.
Tässä on esimerkki tämän havainnollistamiseksi.
digits = (0, 1, 5) for i in digits: print(i) else: print("No items left.")
Kun suoritat ohjelmaa, tulos on:
0 1 5 Ei tuotteita jäljellä.
Täällä for for loop tulostaa luettelon kohteita, kunnes silmukka loppuu. Kun for-silmukka loppuu, se suorittaa koodilohkon elseja tulostaa Ei kohteita jäljellä.
Tätä for… elselausetta voidaan käyttää breakavainsanan kanssa elseeston suorittamiseen vain, kun breakavainsanaa ei suoritettu. Otetaan esimerkki:
# 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.')
Tuotos
Samannimistä merkintää ei löytynyt.








