dla pętli w Pythonie. Składnia, iteracja listy, przerwanie, kontynuacja i inne funkcje

Цikl dla Pythona i cykl while – wypowiedzi oprogramowanie język, mianowicie: operatory iteracji, niechING powtórz kod podany numer czas.

Цикл Dla — сintaxi

Jak już wyjaśniono, cinclude for w Pythonie to iterator oparty naй na cykltożsamość. czy on jest Dzieje Apostolskie przez elementy krotki и lista, słownictwo klucze i inny obiekty iterowalne.

Pętla w Pythonie zaczyna się od słowa kluczowego for, po którym następuje dowolna nazwa zmiennej, która przechowuje wartość następnego obiektu w podanej sekwencji. Ogólna składnia for…in w Pythonie wygląda tak:

za in : jeszcze:      

Podzespoly Komputerowe „sekwencje” są wymienione jeden po drugim zmienna cyklu. Albo raczej, zmienne punkty do taki elementy. Dla wszystkich z nich „akcja” jest wykonywana.

Prosta pętla for w Pythonie z konkretnym przykładem:

>>> języki = ["C", "C++", "Perl", "Python"] >>> dla x w językach: ... print(x) ... C C++ Perl Python >>>

Inny blok jest wyjątkowygr. Jeśli programistaыpracujący с Znajomy Perlы z nim, że dla tych, którzy wchodzą w interakcje с C i C++ — to jest innowacja. Semantycznie to Funkcje тidentycznie pętla while.

Wykonywane tylko wtedy, gdy pętla nie jest „zatrzymywana” przez instrukcję break. Oznacza to, że jest wykonywany dopiero po przejściu wszystkich elementów przez określoną sekwencję.

Operator break w pytonie – break

Jeśli program ma pętlę for niezbędny przerwaćdotychczasowy złamać oświadczenie, he kompletnyto idziei program pływ będzie kontobyć bez aktywacja z innego.

Częściej łamać frazy w pytonieuyutsja z instrukcjami warunkowymi.

jadalne = ["kotlety", "pierogi","jajka","orzechy"] dla jedzenia w jadalnych: if food == "pierogi": print("Nie jem pierogów!") break print("Świetnie, pyszne " + jedzenie) else: print("Dobrze, że nie było pierogów!") print("Obiad się skończył.")

Jeśli uruchomisz ten kod, otrzymasz następujący wynik:

Świetne, pyszne kotlety. Nie jem pierogów! Kolacja się skończyła.

Usuwamy „pierogi” z istniejącej listy danych i otrzymujemy:

Rewelacyjne, pyszne kotlety Rewelacyjne, pyszne jajka Rewelacyjne, pyszne orzeszki Dobrze, że nie było pierogów! Kolacja się skończyła.

operator pominięcia pytona – kontynuuj

Załóżmy, że niechęć użytkownika do takich produktów nie jest tak duża, aby całkowicie zrezygnować z ich konsumpcji. W rezultacie pętla jest kontynuowana z operatorem continue. Poniższy skrypt używa instrukcji continue, aby kontynuować iterację po liście na „kontakt z pierożkiem”.

jadalne = ["kotlety", "pierogi","jajka","orzechy"] dla jedzenia w jadalnych: if food == "pierogi": print("Nie jem pierogów!") continue print("Świetnie, pyszne " + jedzenie) # to może być kod do cieszenia się jedzeniem :-) else: print("Nienawidzę pierogów!") print("Obiad się skończył.")

Najważniejsze:

Świetne, pyszne kotlety. Nie jem pierogów! Świetne, pyszne jajka Świetne, pyszne orzechy Nie znoszę pierogów! Kolacja się skończyła.

Iterowanie po listach za pomocą funkcji range()

Jeśli chcesz uzyskać dostęp do indeksów listy, nie jest jasne, jak użyć do tego celu pętli for. Możliwy jest dostęp do wszystkich elementów, ale indeks elementu pozostanie niedostępny. Istnieje jednak metoda dostępu zarówno do indeksu elementu, jak i samego elementu. W tym celu wykorzystywana jest funkcja range() w połączeniu z funkcją długości len():

fibonacci = [0,1,1,2,3,5,8,13,21] for i in range(len(fibonacci)): print(i,fibonacci[i])

Otrzymać:

0 0 1 1 2 1 3 2 4 3 5 5 6 8 7 13 8 21

Uwaga! Po zastosowaniu len() к list or tuple, otrzymujemy odpowiednią liczbę elementów danej sekwencji.

Trudności w iteracji po listach

Podczas iteracji po liście zaleca się unikanie dynamiki listy w treści pętli. Dla jasności możemy zaoferować następującą opcję:

kolory = ["czerwony"] for i w kolorach: if i == "czerwony": kolory += ["czarny"] if i == "czarny": kolory += ["biały"] print(kolory)

Co się dzieje podczas składania wniosku print(colours)?

['czerwony', 'czarny', 'biały']

Aby tego uniknąć, zaleca się interakcję z kopią za pomocą plasterków, jak w poniższym przykładzie:

kolory = ["czerwony"] for i w kolorach[:]: if i == "czerwony": kolory += ["czarny"] if i == "czarny": kolory += ["biały"] print(kolory )

Wynik:

['Czerwony czarny']

Lista została zmieniona colours, ale ta akcja nie wpłynęła na pętlę. Dane, które wymagały iteracji, pozostały niezmienione podczas wykonywania pętli.

Wylicz w Pythonie 3

Enumerate to wbudowana funkcja Pythona. Większość początkujących, a także niektórzy doświadczeni programiści nie są świadomi jego istnienia. Pozwala na automatyczne zliczanie iteracji pętli. Na przykład:

dla licznika wartość w enumerate(some_list): print(licznik, wartość)

Funkcjonować enumerate przyjmuje również opcjonalny argument (wartość pochodzenia, przyjmowana domyślnie dla 0). Co czyni go jeszcze bardziej wydajnym.

moja_lista = ['jabłko', 'banan', 'wiśnia', 'brzoskwinia'] dla c, wartość w enumerate(moja_lista, 1): print(c, wartość) # Wynik: # 1 jabłko # 2 banan # 3 wiśnia # 4 brzoskwinie

Dodaj komentarz