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ę |