Python Tuple to zbiór obiektów oddzielonych przecinkami. Pod pewnymi względami krotka jest podobna do listy w Pythonie pod względem indeksowania, zagnieżdżania obiektów i powtarzania, ale główna różnica między obydwoma jest taka, że krotka w Pythonie jest niezmienna, w przeciwieństwie do listy w Pythonie, która jest zmienna.
Tworzenie krotek Pythona
Krotkę można utworzyć na różne sposoby Pyton . Są one następujące:
- Używanie nawiasów okrągłych
- Z jednym przedmiotem
- Konstruktor krotki
Utwórz krotki za pomocą nawiasów okrągłych ()
Aby utworzyć krotkę, użyjemy operatorów ().
Python3
jak znaleźć ukryte rzeczy na Androidzie
var>=> (>'Geeks'>,>'for'>,>'Geeks'>)> print>(var)> |
>
>
Wyjście:
('Geeks', 'for', 'Geeks')> Utwórz krotkę z jednym elementem
Python 3.11 zapewnia nam inny sposób tworzenia krotki.
Python3
values :>tuple>[>int> |>str>, ...]>=> (>1>,>2>,>4>,>'Geek'>)> print>(values)> |
>
>
Wyjście:
Tutaj, w powyższym fragmencie, rozważamy zmienną zwaną wartościami, która przechowuje krotkę składającą się z int lub str, „…” oznacza, że krotka będzie zawierać więcej niż jedną int lub str.
(1, 2, 4, 'Geek')>
Notatka: Jeśli generujesz krotkę z pojedynczym elementem, pamiętaj o dodaniu przecinka po elemencie. Zobaczmy przykład tego samego.
Python3
mytuple>=> (>'Geeks'>,)> print>(>type>(mytuple))> #NOT a tuple> mytuple>=> (>'Geeks'>)> print>(>type>(mytuple))> |
>
>
Wyjście:
>
Konstruktor krotek w Pythonie
Aby utworzyć krotkę za pomocą konstruktora Tuple, przekażemy elementy jako jej parametry.
Python3
tuple_constructor>=> tuple>((>'dsa'>,>'developement'>,>'deep learning'>))> print>(tuple_constructor)> |
>
>
Wyjście :
('dsa', 'developement', 'deep learning')> Co jest niezmienne w krotkach?
Krotki w Pythonie są podobne do Listy Pythona ale nie całkowicie. Krotki są niezmienne i uporządkowane oraz pozwalają na powielanie wartości. Niektóre cechy krotek w Pythonie.
- Możemy znaleźć elementy w krotce, ponieważ znalezienie dowolnego elementu nie powoduje zmian w krotce.
- Nie można dodawać elementów do krotki po jej utworzeniu.
- Krotek nie można dołączać ani rozszerzać.
- Nie możemy usunąć elementów z krotki po jej utworzeniu.
Zobaczmy to na przykładzie.
Python3
mytuple>=> (>1>,>2>,>3>,>4>,>5>)> # tuples are indexed> print>(mytuple[>1>])> print>(mytuple[>4>])> # tuples contain duplicate elements> mytuple>=> (>1>,>2>,>3>,>4>,>2>,>3>)> print>(mytuple)> # adding an element> mytuple[>1>]>=> 100> print>(mytuple)> |
>
>
Wyjście:
Krotki Pythona są uporządkowane i możemy uzyskać dostęp do ich elementów za pomocą ich wartości indeksu. Są one również niezmienne, tj. nie możemy dodawać, usuwać ani zmieniać elementów raz zadeklarowanych w krotce, więc gdy próbowaliśmy dodać element o indeksie 1, wygenerował błąd.
2 5 (1, 2, 3, 4, 2, 3) Traceback (most recent call last): File 'e0eaddff843a8695575daec34506f126.py', line 11, in tuple1[1] = 100 TypeError: 'tuple' object does not support item assignment>
Dostęp do wartości w krotkach Pythona
Krotki w Pythonie udostępniają dwa sposoby dostępu do elementów krotki.
- Korzystanie z indeksu dodatniego
- Używanie indeksu ujemnego
Python Access Tuple przy użyciu dodatniego indeksu
Używając nawiasów kwadratowych, możemy uzyskać wartości z krotek w Pythonie.
Python3
var>=> (>'Geeks'>,>'for'>,>'Geeks'>)> print>(>'Value in Var[0] = '>, var[>0>])> print>(>'Value in Var[1] = '>, var[>1>])> print>(>'Value in Var[2] = '>, var[>2>])> |
>
>
Wyjście:
Value in Var[0] = Geeks Value in Var[1] = for Value in Var[2] = Geeks>
Uzyskaj dostęp do krotki przy użyciu indeksu ujemnego
W powyższych metodach używamy indeksu dodatniego, aby uzyskać dostęp do wartości w Pythonie, a tutaj użyjemy indeksu ujemnego w obrębie [].
Python3
wątek.zniszcz
var>=> (>1>,>2>,>3>)> print>(>'Value in Var[-1] = '>, var[>->1>])> print>(>'Value in Var[-2] = '>, var[>->2>])> print>(>'Value in Var[-3] = '>, var[>->3>])> |
>
>
Wyjście:
Value in Var[-1] = 3 Value in Var[-2] = 2 Value in Var[-3] = 1>
Różne operacje związane z krotkami
Poniżej znajdują się różne operacje związane z krotkami w Pythonie:
- Powiązanie
- Zagnieżdżanie
- Powtórzenie
- Krajanie na plastry
- Usuwanie
- Znalezienie długości
- Wiele typów danych z krotkami
- Konwersja list na krotki
- Krotki w pętli
Łączenie krotek Pythona
Do Powiązanie krotek Pythona będziemy używać operatorów plus(+).
Python3
# Code for concatenating 2 tuples> tuple1>=> (>0>,>1>,>2>,>3>)> tuple2>=> (>'python'>,>'geek'>)> # Concatenating above two> print>(tuple1>+> tuple2)> |
>
>
Wyjście:
(0, 1, 2, 3, 'python', 'geek')>
Zagnieżdżanie krotek Pythona
Zagnieżdżona krotka w Pythonie oznacza krotkę wewnątrz innej krotki.
Python3
# Code for creating nested tuples> tuple1>=> (>0>,>1>,>2>,>3>)> tuple2>=> (>'python'>,>'geek'>)> tuple3>=> (tuple1, tuple2)> print>(tuple3)> |
>
>
Wyjście :
((0, 1, 2, 3), ('python', 'geek'))> Powtarzanie krotek Pythona
Możemy utworzyć krotkę wielu takich samych elementów z pojedynczego elementu w tej krotce.
Python3
pole listy Java
# Code to create a tuple with repetition> tuple3>=> (>'python'>,)>*>3> print>(tuple3)> |
>
>
Wyjście:
('python', 'python', 'python')> Wypróbuj powyższe bez przecinka i sprawdź. Otrzymasz krotkę3 jako ciąg „pythonpythonpython”.
Krojenie krotek w Pythonie
Dzielenie krotki Pythona oznacza dzielenie krotki na małe krotki przy użyciu metody indeksowania.
Python3
# code to test slicing> tuple1>=> (>0> ,>1>,>2>,>3>)> print>(tuple1[>1>:])> print>(tuple1[::>->1>])> print>(tuple1[>2>:>4>])> |
>
>
Wyjście:
W tym przykładzie przecięliśmy krotkę od indeksu 1 do ostatniego elementu. W drugiej instrukcji print wydrukowaliśmy krotkę przy użyciu odwrotnego indeksowania. W trzeciej instrukcji print wydrukowaliśmy elementy od indeksu 2 do 4.
(1, 2, 3) (3, 2, 1, 0) (2, 3)>
Notatka: W przypadku krojenia w Pythonie podany indeks końcowy nie jest uwzględniany.
Usuwanie krotki w Pythonie
W tym przykładzie usuwamy krotkę za pomocą „ słowo kluczowe del . Dane wyjściowe będą miały postać błędu, ponieważ po usunięciu krotki zwróci błąd NameError.
Notatka: Usunięcie pojedynczych elementów krotki nie jest możliwe, ale możemy usunąć całą krotkę za pomocą słowa kluczowego Del.
Python3
# Code for deleting a tuple> tuple3>=> (>0>,>1>)> del> tuple3> print>(tuple3)> |
>
>
Wyjście:
Traceback (most recent call last): File 'd92694727db1dc9118a5250bf04dafbd.py', line 6, in print(tuple3) NameError: name 'tuple3' is not defined>
Znajdowanie długości krotki Pythona
Aby znaleźć długość krotki, możemy użyć funkcji len() Pythona i przekazać krotkę jako parametr.
Python3
# Code for printing the length of a tuple> tuple2>=> (>'python'>,>'geek'>)> print>(>len>(tuple2))> |
>
>
Wyjście:
2>
Wiele typów danych z krotką
Krotki w Pythonie mają charakter heterogeniczny. Oznacza to, że krotki obsługują elementy z wieloma typami danych.
Python3
# tuple with different datatypes> tuple_obj>=> (>'immutable'>,>True>,>23>)> print>(tuple_obj)> |
Urfi Javed
>
>
Wyjście :
('immutable', True, 23)> Konwersja listy na krotkę
Możemy przekonwertować a lista w Pythonie do krotki, używając konstruktora tuple() i przekazując listę jako jej parametry.
Python3
# Code for converting a list and a string into a tuple> list1>=> [>0>,>1>,>2>]> print>(>tuple>(list1))> # string 'python'> print>(>tuple>(>'python'>))> |
>
>
Wyjście:
Krotki przyjmują pojedynczy parametr, którym może być lista, ciąg znaków, zestaw lub nawet słownik (tylko klucze są traktowane jako elementy) i konwertują je na krotkę.
(0, 1, 2) ('p', 'y', 't', 'h', 'o', 'n')> Krotki w pętli
Możemy również utworzyć krotkę zawierającą pojedynczy element, używając pętle .
Python3
# python code for creating tuples in a loop> tup>=> (>'geek'>,)> # Number of time loop runs> n>=> 5> for> i>in> range>(>int>(n)):> >tup>=> (tup,)> >print>(tup)> |
>
>
Wyjście:
(('geek',),) ((('geek',),),) (((('geek',),),),) ((((('geek',),),),),) (((((('geek',),),),),),)>