Krotki (tuples)

Stronę tą wyświetlono już: 217 razy

Krotki są strukturami danych bardzo podobnymi do list, w takim sensie, że można w nich przechowywać dowolną ilość dowolnego typu elementów a także iterować po nich. Różnica jest taka, że nie można zmienić zawartości elementów krotki.

Tworzenie krotki

To co definiuje, że dany obiekt jest krotką to nie nawiasy a przecinki, co ciekawe krotkę składającą się z jednego elementu można uzyskać w następujący sposób:

Listing 1
  1. krotka = 10,
  2. print(krotka)

Wynik działania:

(10,)

Do raz utworzonej krotki nie można dodać ani usunąć żadnego jej elementu, jak również zmienić jej zawartości.

A oto sposób na tworzenie bardziej złożonych krotek:

Listing 2
  1. krota = 2, 4.5, "tekst"
  2. pirint(krotka)
  3. krotka = tuple(range(1,11))
  4. print(krotka)
  5. lista = list(range(10,0,-1))
  6. krotka = tuple(lista)
  7. print(krotka)

Wynik działania:

(2, 4.5, 'tekst')
(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
(10, 9, 8, 7, 6, 5, 4, 3, 2, 1)

Iterowanie po elementach krotki

Po elementach krotki można iterować tak samo jak po elementach listy:

Listing 3
  1. krotka = 1, 6, 5, 3, 8
  2. for i in krotka
  3. print(i)

Wynik działania:

1
6
5
3
8

Sprawdzanie, czy jakiś element znajduje się na liście krotki za pomocą in:

Listing 4
  1. krotka = 34, 45.6, "tekst"
  2. if "tekst" in krotka:
  3. print("Znaleziono w krotce ten element!")
  4. else:
  5. print("Nie znaleziono w krotce tego elementu")

Wynik działania:

Znaleziono w krotce ten element!

Znajdowanie indeksu pierwszego elementu w krotce za pomocą metody wewnętrznej index:

Listing 5
  1. krotka = 34, 45.6, "tekst"
  2. if "tekst" in krotka:
  3. print("Znaleziono w krotce ten element pod indeksem {indeks}!".format(indeks = krotka.index("tekst")))

Wynik działania:

Znaleziono w krotce ten element pod indeksem 2!

Zliczanie wystąpień w krotce danej wartości za pomocą metody wewnętrznej count:

Listing 6
  1. krotka = 2, 4, 6, 7, 7, 7
  2. print("Znaleziono w krotce {indeks} elementów zawierających liczbę 7!".format(indeks = krotka.count(7)))

Wynik działania:

Znaleziono w krotce 3 elementów zawierających liczbę 7!

Uzyskiwanie krotki odwróconej:

Listing 7
  1. krotka = 2, 4, 6, 7, 7, 7
  2. print(krotka[::-1])

Wynik działania:

(7, 7, 7, 6, 4, 2)

Uzyskiwanie wycinka krotki:

Listing 8
  1. krotka = 2, 4, 6, 7, 7, 7
  2. print(krotka[1:4])

Wynik działania:

(4, 6, 7)

Liczba elementów krotki

Za pomocą funkcji len:

Listing 9
  1. krotka = 2, 4, 6, 7, 7, 7
  2. print(len(krotka))

Wynik działania:

6

Za pomocą wewnętrznej metody __len__:

Listing 10
  1. krotka = 2, 4, 6, 7, 7, 7
  2. print(krotka.__len__())

Komentarze