Twoje Centrum Szkoleniowe

Nauczmy się dziś czegoś nowego!

Kurs programowania - Python

PYTHON Krotki

 

Krotki (ang. tuples) są sekwencją danych bardzo zbliżoną do list. Operacje na krotkach wyglądają identycznie, jak na listach, układ, sposób indeksowania danych również wygląda tak samo. Różnica natomiast jest taka, że zawartości krotek nie można edytować.

Tworzenie krotki

Aby utworzyć krotkę, posłużymy się jednym z dwóch sposobów:

moja_krotka = ('pies', 5, 'kot', 'jeż', 77, 'pająk', 8.4)
print(moja_krotka, type(moja_krotka))
moja_krotka = 'pies', 5, 'kot', 'jeż', 77, 'pająk', 8.4
print(moja_krotka, type(moja_krotka))

 

W pierwszym przypadku posłużyliśmy się nawiasami okrągłymi,  w drugim w ogóle pominęliśmy nawiasy. Efekt w obu przypadkach jest identyczny:

('pies', 5, 'kot', 'jeż', 77, 'pająk', 8.4) <class 'tuple'>

 

Jeśli natomiast chcemy utworzyć krotkę składającą się wyłącznie z jednego elementu, musimy napisać go z następującym po nim przecinkiem:

moja_krotka2 = 4,
print(moja_krotka2, type(moja_krotka2))

 

Jeśli pominiemy przecinek, powyższa wartość (4) zostanie zakwalifikowana jako zwykła liczba całkowita i efekt będzie następujący:

moja_krotka2 = (4)
print(moja_krotka2, type(moja_krotka2))

 

Odczyt danych z krotki

Odczyt danych jest identyczny jak w przypadku list. Dla przykładu podam tylko odwołanie się do pojedynczego elementu:

moja_krotka = 'pies', 5, 'kot', 'jeż', 77, 'pająk', 8.4
print(moja_krotka[0])

Efekt: pies

 

Konwersja krotki na listę

Krotka jest niemodyfikowalna, jednak można ją przekształcić w listę. Użyjemy do tego modyfikatora typu list(), działającego podobnie jak int() czy float().

moja_krotka = 'pies', 5, 'kot', 'jeż', 77, 'pająk', 8.4
print(type(moja_krotka))
moja_lista = list(moja_krotka)
print(type(moja_lista))

W ten sam sposób dokonamy konwersji w drugą stronę. Tym razem musimy jednak użyć modyfikatora tuple().

 

Pakowanie i rozpakowywanie krotek

Pakowanie to proces tworzenia krotki z kilku wartości, a rozpakowywanie to przypisywanie tych wartości do oddzielnych zmiennych. Jest to przydatne w wielu algorytmach, szczególnie tam, gdzie trzeba pracować z grupami wartości.

# Pakowanie
owoc1, owoc2 = "jabłko", "banan"
krotka = (owoc1, owoc2)

# Rozpakowywanie
(owoc1, owoc2) = krotka
print(owoc1)  # Wypisze "jabłko"
print(owoc2)  # Wypisze "banan"

 

Zagnieżdżanie krotek

Krotki mogą zawierać inne krotki, listy lub inne struktury danych. Zagnieżdżanie pozwala na tworzenie bardziej złożonych struktur danych, które mogą być przydatne w różnych scenariuszach programowania.

krotka_w_krotce = (("jabłko", "banan"), ("pomarańcza", "kiwi"))
print(krotka_w_krotce)

 

Testy przypięte do lekcji
Aby uzyskać dostęp do testów i ćwiczeń interaktywnych - Zaloguj się
Aby widzieć ocenę lekcji - Zaloguj się