HTML CSS PYTHON
reklama

Iteracja w PYTHONIE

Iteracja (ang. iteration) to proces w którym polecenia/instrukcje wykonywane są na elementach wybranej kolekcji typu stringi, listy, zestawy, słowniki, krotki.
Iterujemy wewnątrz pętli typu for lub while.

Uwaga! Termin "iteracja" w kontekście programowania ma dwa utarte znaczenia: jedno odnosi się do całego procesu iterowania przez dany obiekt, drugie do pojedynczego kroku takiej iteracji (np. "kolejna iteracja pętli"). Iterowalny (ang. iterable) – to wszystko po czym można iterować/przechodzić.
Iterable posiada metodę zwracającą tzw. iterator. Ta metoda to `__iter__()`.
Listy, krotki, zestawy, słowniki i łańcuchy Pythona są iterowalne, ponieważ możesz iterować po ich elementach i uzyskiwać do nich dostęp — jeden po drugim.

Iterator (ang. iterator) to obiekt, który przeprowadza itetrację na obiektach iterowalnych i wie na którym elemencie w iterowalnym obiekcie aktualnie jesteśmy.
Tłumacząc prościej, iterator jest to nic innego jak obiekt pozwalający na sekwencyjny dostęp do kolejnych elementów zawartych w wybranych obiektach np. listach, zestawach, krotkach, słwonikach, ciągach.

Python udostępnia bardzo prosty sposób tworzenia iteratorów. Wystarczy, że w klasie zdefiniujemy dwie metody: __iter__() oraz __ next__().
Są to specjalne metody zwane łącznie protokołem iteratora

metoda iter() zwraca obiekt naszego iteratora.
metoda next() zwraca nastepny element sekwencji. Po zakończeniu elementów zwraca wyjątek "stopiteration":
Przykład:
x=[1,2,3,4]
y=iter(x)
print(y)
<list_iterator object at 0x000001F2B8DDBFD0>
next(y)
1       #wynik
next(y)
2       #wynik
next(y)
3       #wynik
next(y)
4       #wynik
next(y)
 
StopIteration    #wynik
Generator to funkcja, która zwraca iterator i ogólnie polega na tym że funkcja ta może zostać zatrzymana a następnie wznowiona od miejsca, w którym została wstrzymana. Na podstawie zapamiętanego stanu możliwe jest zwracanie różnych wartości (iteratorów) podczas kolejnych wstrzymań funkcji.

Iteracja w łańcuchach Pythona

Iterowalny jest łańcuch (ciąg) w pętli for:
Przykład:
for i in "bananik":
            print(i)
wynik:
b
a
n
a
n
i
k


Iteracja w listach Pythona

Iteracja w listach Pythona przebiega po elementach listy, jeden po drugim, w takim porządku, w jakim są one umieszczone.

W Pythonie jest kilka sposobów iteracji w listach:

1. Użycie pętli 'for'
2. Użycie pętli 'for' i metody range()
3. Użycie pętli 'while'
4. Użycie comprehension (chyba najbardziej konkretny sposób)
5. Użycie pętli for i funkcji enumerate()
Ad1. Użycie pętli 'for' w listach:

Przykład:
x=[1,2,3,4]
for i in x:
    print(i)
 
 #wynik
1
2
3
4
Ad2. Funkcja len(), pętla for, metoda range() w listach:

Przykład:
x=["jola","madzia","pauli"]
y=len(x)
for i in range(y):
    print(x[i])
 
#wynik    
jola
madzia
pauli
Ad3. Funkcja len i pętla while w listach:

Przykład:
x=["jola","madzia","pauli"]
y=len(x)
i=0
while i<y:
    print(x[i])
    i+=1
 
#wynik    
jola
madzia
pauli
Ad4. Użycie comprehension w listch:

Przykład:
x=["jola","madzia","pauli"]
[i for i in x]
['jola', 'madzia', 'pauli']  #wynik
Ad5. Funkcja enumerate w listach:

Przykład:
x=["jola","madzia","pauli"]
for iteration_1, iteration_2 in enumerate(x):
    print(iteration_1,"-",iteration_2)
 
#wynik    
0 - jola
1 - madzia
2 - pauli

Iteracja w słownikach w PYTHONIE

Iterowalny jest słownik (dict) w Pythonie.

Istnieje wiele sposobów iteracji słownika w Pythonie.

1. Dostęp do klucza za pomocą metody keys()
2. Dostęp do słownika bez użycia metod wbudowanych w Pythona
3. Iteruj przez wszystkie wartości za pomocą metody values()
4. Iteruj przez wszystkie pary kluczy i wartości, używając metody items()
5. Uzyskaj dostęp zarówno do klucza, jak i wartości bez użycia metody items()

Ad1. Metoda keys() zwraca listę wszystkich kluczy słownika.

składnia:
dict.keys()

Przykład:
x={1:"Jola",2:"Madzia",3:"Pulinka"}
x.keys()
dict_keys([1, 2, 3])  #wynik
 
Ad2. Klucz dostępu do słownika bez użycia metod wbudowanych w Pythona

Iterowanie po słowniku przy użyciu pętli 'for':

Przykład:
x={1:"Jola",2:"Madzia",3:"Pulinka"}
for i in x:
    print(i)
 
#wynik    
1
2
3
Ad3. Metoda values() zwraca wszystkie wartości słownika:

Przykład:
x={1:"Jola",2:"Madzia",3:"Pulinka"}
x.values()
 
dict_values(['Jola', 'Madzia', 'Pulinka'])  #wynik
Ad4. Metoda items() zwraca pary 'klucz : wartość' słownika Pythona.

Przykład:
x={1:"Jola",2:"Madzia",3:"Pulinka"}
x.items()
dict_items([(1, 'Jola'), (2, 'Madzia'), (3, 'Pulinka')])  #wynik
Ad5. Sposób na dostęp do elementów słownika 'klucz : wartość' przy użyciu pętli for w Pythonie.
Przykład:
x={1:"Jola",2:"Madzia",3:"Pulinka"}
for i in x:
    print(i,':',x[i])
 
#wynik    
1 : Jola
2 : Madzia
3 : Pulinka
Samouczek Pythona
reklama
reklama
Szkoła bananik.pl jest zoptymalizowana pod kątem uczenia się, testowania i szkolenia.
Przykłady są stale sprawdzane, aby uniknąć błędów, ale nie możemy zagwarantować pełnej poprawności wszystkich treści.
Korzystając z tej witryny, wyrażasz zgodę na przeczytanie i zaakceptowanie naszych warunków użytkowania, plików cookie i polityki prywatności.
© 2024 bananik.pl
Ta strona używa ciasteczek (cookies), dzięki którym nasz serwis może działać lepiej.Rozumiem