reklama
Krotka / tuple w Pythonie
Krotki/tuple, podobnie jak inne kolekcje, służą do przechowywania wielu elementów w jednej zmiennej.
Z perpektywy pythona krotka to obiekt o określonym typie czyli tuple.
Elementy krotki piszemy
zwykłych, okrągłych nawiasach i oddzielamy je przecinkiem.
Krotki to jeden z czterech typów przechowywania danych w pythonie, obok słowników, zestawów i list.
Krotki są uporządkowane- elementy mają określoną kolejność i ta kolejność się nie zmieni.
Krotki są niezmienne -nie możemy zmieniać, dodawać ani usuwać elementów po utworzeniu krotki.
Krotki zezwalają na powtórzenia elementów, ponieważ elementy w krotce są indeksowane.
Przykład
x=("jola", "pauli", "krzys", "mada","mada")
print(x)
('jola', 'pauli', 'krzys', 'mada', 'mada') #wynik
funkcja type()
Jeśli krotka zawiera tylko jeden element, to po elemencie musi być przecinek. W innym razie python nie rozpozna, że to krotka.
Użyjemy funkcji
type() do oreślenia typu danych w pythonie:
Przykład
x=("jola",)
print(type(x))
<class 'tuple'> #wynik
Jeżeli nie napiszemy przecinka to python w tym przypadku rozpozna typ str.
Przykład
x=("jola",)
print(type(x))
<class 'tuple'> #wynik
Przykład
x=("jola")
print(type(x))
wynik:
<class 'str'
Typy danych w krotce
Krotki mogą mieć dowolny typ danych:
Przykład
x=(1,2,3,4)
y=("jola", "pauli", "mada")
z=(True, True, False)
s=(True, "mada", 100)
Konstruktor krotki- tuple()
Python zawiera sprcjalną metode do utworzenia krotki tuple(). Podobnie jak w listach list(), słownikach dict() i zestawach set().
Przykład
x=tuple((1,2,3))
print(x)
wynik:
(1, 2, 3)
Dostęp do elementów krotki
Aby dostać się do określonego elementu w krotce, należy odwołac się do numeru pozycji tego elementu:
Przykład
x=("jola", "pauli", "mada")
print(x[1])
pauli #wynik
Indeksowanie ujemne:
liczba -1 wskazuje na ostatnią pozycję w krotce:
Przykład
x=("jola", "pauli", "mada")
print(x[-1])
mada #wynik
Zakres indeksów
W krotce można określić zakres interesujących nas elementów:
Przykład
x=("jola", "pauli", "mada", "krzys")
print(x[0:2])
('jola', 'pauli') #wynik
WAŻNE: pozycja numer 2 się nie wyświetli.
Instrukcja if w krotce
Dzięki instrukcji if w krotce, możemy wskazać, czy dany element istnieje w krotce:
Przykład
x=("jola", "pauli", "mada")
if "pauli" in x:
print("istnieje")
istnieje #wynik
Niezmienność elementów w krotce
Krotki są niezmienne, tzn. nie możemy zmieniać, dodawać ani usuwać elementów po jej utworzeniu.
Ale jest na to pewien sposób. Możemy przekonwertować krotkę na listę wykorzystując konstruktor list(), zmienić listę a następnie z powrotem
przekonwertować listę na krotkę, wykorzystując konstruktor tuple()
Przykład
x=("tygrys", "krokodyl", "lew")
y=list(x) #konwersja krotki na listę
y[2]="kot" #zamiana pozycji nr 2 z listy na słowo "kot"
print(y)
['tygrys', 'krokodyl', 'kot'] #wynik
x=tuple(y) #konwersja listy na krotkę
print(x)
('tygrys', 'krokodyl', 'kot') #wynik
Dodawanie elementów do krotki
Jeśli chcemy dodać element do krotki, to również nie możemy wykonać tej operacji bezpośrednio, ponieważ krotka jest niezmienna, tzn.
nie możemy zmieniać, dodawać ani usuwać elementów po jej utworzeniu. Ale jak w poprzednim przykładzie również możemy przekonwertować krotkę
na tablicę, dodać element do tablicy wykorzystując metodę append() i następnie z powrotem przekonwertować listę na krotkę, wykorzystując do
operacji konstruktory list() oraz tuple().
Przykład
x=("tygrys", "krokodyl", "lew")
y=list(x)
print(y)
['tygrys', 'krokodyl', 'lew']
y.append("kot")
print(y)
['tygrys', 'krokodyl', 'lew', 'kot']
x=tuple(y)
print(x)
('tygrys', 'krokodyl', 'lew', 'kot')
Pętla for na krotkach
Krotki są iterowalne, możemy wykonywać na nich pętle for:
Przykład
x=("tygrys", "krokodyl", "lew")
for i in x:
print(i)
#wynik:
tygrys
krokodyl
lew
Funkcja range() wraz z funkcję len()
W pętli for w krotce możemy użyć dodatkowo funkcji range().
Żeby użyć funkcji range() musimy jeszcze wykorzystać funkcję len()
Przykład
x=("tygrys", "krokodyl", "lew")
for i in range (len(x)):
print(x[i])
#wynik:
tygrys
krokodyl
lew
Funkcja len() w krotce
Funkcja len() pozwala na określenie ile elementów ma krotka.
Przykład
x=("jola", "pauli", "krzys", "mada","mada")
print(len(x))
5 #wynik
Pętle while w krotkach
Na krotkach można przeprowadzać pętle while:
Przykład
x=(1,2,3,4)
print(len(x))
4 #wynik funkcji len()
i=0
while i<len(x):
print(x[i])
i += 1
#wynik pętli
1
2
3
4
Łączenie krotek
Krotki można łączyć wykorzystując dodatkową zmienną:
Przykład
x=("krokodyl", "tygrys", "kot")
y=("pantera", "lampart")
z=x+y
print(z)
('krokodyl', 'tygrys', 'kot', 'pantera', 'lampart') #wynik
metoda count()
W krotkach Pythona wbudowane są tylko dwie metody: count() i index().
Metoda count()
Metoda count() zwraca liczbę wystąpień danej wartości w krotce.
Przykład
x=("krokodyl", "tygrys", "kot", "kot")
x.count("kot")
2 #wynik
Składnia metody count()
string.count(value, start, end)
value - wymagany, wyszukiwana wartość ciągu lub liczby;
start - opcjonalny, liczba całkowita. Pozycja rozpoczęcia wyszukiwania. Wartość domyślna to 0;
end - opcjonalny, liczba całkowita. Pozycja zakończenia wyszukiwania. Domyślnie jest to koniec łańcucha
metoda index()
Metoda index() zwraca pozycję przy pierwszym wystąpieniu określonej wartości.
Przykład
x=("krokodyl", "tygrys", "kot")
print(x.index("kot"))
2 #wynik
Przykład
x=[1,2,3,4]
x=(1,2,3,4)
print(x.index(3))
2 #wynik
reklama