Python dla pętli
Python dla pętli
Pętla for służy do iteracji sekwencji (czyli listy, krotki, słownika, zestawu lub łańcucha).
Jest to mniej podobne do słowa kluczowego for w innych językach programowania i działa bardziej jak metoda iteracyjna, którą można znaleźć w innych językach programowania obiektowego.
Za pomocą pętli for możemy wykonać zestaw instrukcji, raz dla każdego elementu listy, krotki, zestawu itp.
Przykład
Wydrukuj każdy owoc na liście owoców:
fruits = ["apple", "banana", "cherry"]
for
x in fruits:
print(x)
Pętla for nie wymaga wcześniejszego ustawienia zmiennej indeksującej.
Zapętlanie przez sznurek
Nawet łańcuchy są obiektami iterowalnymi, zawierają ciąg znaków:
Przykład
Zapętl litery w słowie „banan”:
for x in "banana":
print(x)
Oświadczenie o przerwaniu
Za pomocą instrukcji break możemy zatrzymać pętlę, zanim przejdzie ona przez wszystkie elementy:
Przykład
Wyjdź z pętli, gdy x
jest „banan”:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
print(x)
if x ==
"banana":
break
Przykład
Wyjdź z pętli, gdy x
jest „banan”, ale tym razem przerwa jest przed wydrukiem:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
if x ==
"banana":
break
print(x)
Kontynuuj oświadczenie
Za pomocą instrukcji continue możemy zatrzymać bieżącą iterację pętli i przejść do następnej:
Przykład
Nie drukuj banana:
fruits = ["apple", "banana", "cherry"]
for x in fruits:
if x ==
"banana":
continue
print(x)
Zakres () Funkcja
Aby przejść przez zbiór kodu określoną liczbę razy, możemy użyć funkcji range() ,Funkcja range() zwraca sekwencję liczb, domyślnie zaczynając od 0 i zwiększa się o 1 (domyślnie) i kończy się określoną liczbą.
Przykład
Za pomocą funkcji range():
for x in range(6):
print(x)
Zauważ, że range(6) nie jest wartościami od 0 do 6, ale wartościami od 0 do 5.
Funkcja range() domyślnie przyjmuje wartość 0 jako wartość początkową, jednak możliwe jest określenie wartości początkowej poprzez dodanie parametru: range(2, 6) , co oznacza wartości od 2 do 6 (ale nie wliczając 6):
Przykład
Za pomocą parametru start:
for x in range(2, 6):
print(x)
Funkcja range() domyślnie zwiększa sekwencję o 1, jednak możliwe jest określenie wartości przyrostu przez dodanie trzeciego parametru: range(2, 30, 3 ) :
Przykład
Zwiększ sekwencję o 3 (domyślnie 1):
for x in range(2, 30, 3):
print(x)
Jeszcze w For Loop
Słowo else
kluczowe w
for
pętli określa blok kodu, który ma zostać wykonany po zakończeniu pętli:
Przykład
Wydrukuj wszystkie liczby od 0 do 5 i wypisz wiadomość po zakończeniu pętli:
for x in range(6):
print(x)
else:
print("Finally finished!")
Uwaga: Blok else
NIE zostanie wykonany, jeśli pętla zostanie zatrzymana przez break
instrukcję.
Przykład
Przerwij pętlę, gdy x
wynosi 3, i zobacz, co dzieje się z
else
blokiem:
for x in range(6):
if x == 3: break
print(x)
else:
print("Finally finished!")
Pętle zagnieżdżone
Zagnieżdżona pętla to pętla wewnątrz pętli.
„Pętla wewnętrzna” zostanie wykonana jeden raz dla każdej iteracji „pętli zewnętrznej”:
Przykład
Wydrukuj każdy przymiotnik dla każdego owocu:
adj = ["red", "big", "tasty"]
fruits = ["apple", "banana", "cherry"]
for x in adj:
for y in fruits:
print(x, y)
Oświadczenie o przepustce
for
pętle nie mogą być puste, ale jeśli z jakiegoś powodu masz for
pętlę bez zawartości, umieść ją w pass
instrukcji, aby uniknąć błędu.
Przykład
for x in [0, 1, 2]:
pass