Python 3 - krotki
Krotka to zbiór obiektów, które są uporządkowane i niezmienne. Krotki to sekwencje, podobnie jak listy. Główna różnica między krotkami a listami polega na tym, że krotki nie mogą być zmieniane w przeciwieństwie do list. Krotki używają nawiasów, podczas gdy listy używają nawiasów kwadratowych.
Tworzenie krotki jest tak proste, jak umieszczanie różnych wartości oddzielonych przecinkami. Opcjonalnie możesz również umieścić te wartości oddzielone przecinkami w nawiasach. Na przykład -
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"
Pusta krotka jest zapisana jako dwa nawiasy zawierające nic -
tup1 = ();
Aby napisać krotkę zawierającą pojedynczą wartość, musisz dołączyć przecinek, nawet jeśli jest tylko jedna wartość -
tup1 = (50,)
Podobnie jak indeksy łańcuchowe, indeksy krotek zaczynają się od 0 i można je kroić, łączyć i tak dalej.
Dostęp do wartości w krotkach
Aby uzyskać dostęp do wartości w krotce, użyj nawiasów kwadratowych do wycinania wraz z indeksem lub indeksami, aby uzyskać wartość dostępną w tym indeksie. Na przykład -
#!/usr/bin/python3
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
print ("tup1[0]: ", tup1[0])
print ("tup2[1:5]: ", tup2[1:5])
Wykonanie powyższego kodu daje następujący wynik -
tup1[0]: physics
tup2[1:5]: (2, 3, 4, 5)
Aktualizowanie krotek
Krotki są niezmienne, co oznacza, że nie można aktualizować ani zmieniać wartości elementów krotki. Możesz wziąć fragmenty istniejących krotek, aby utworzyć nowe krotki, jak pokazano w poniższym przykładzie -
#!/usr/bin/python3
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
# Following action is not valid for tuples
# tup1[0] = 100;
# So let's create a new tuple as follows
tup3 = tup1 + tup2
print (tup3)
Wykonanie powyższego kodu daje następujący wynik -
(12, 34.56, 'abc', 'xyz')
Usuń elementy krotki
Usunięcie pojedynczych elementów krotki nie jest możliwe. Nie ma oczywiście nic złego w składaniu kolejnej krotki z odrzuconymi niepożądanymi elementami.
Aby jawnie usunąć całą krotkę, po prostu użyj delkomunikat. Na przykład -
#!/usr/bin/python3
tup = ('physics', 'chemistry', 1997, 2000);
print (tup)
del tup;
print ("After deleting tup : ")
print (tup)
Daje to następujący wynik.
Note- Zgłoszono wyjątek. To dlatego, że podel tup, krotka już nie istnieje.
('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
File "test.py", line 9, in <module>
print tup;
NameError: name 'tup' is not defined
Podstawowe operacje na krotkach
Krotki reagują na operatory + i *, podobnie jak łańcuchy; mają tu na myśli konkatenację i powtórzenie, z tym wyjątkiem, że wynikiem jest nowa krotka, a nie ciąg.
W rzeczywistości krotki odpowiadają na wszystkie ogólne operacje sekwencyjne, których użyliśmy na łańcuchach w poprzednim rozdziale.
Wyrażenie Pythona | Wyniki | Opis |
---|---|---|
len ((1, 2, 3)) | 3 | Długość |
(1, 2, 3) + (4, 5, 6) | (1, 2, 3, 4, 5, 6) | Powiązanie |
(„Cześć!”,) * 4 | („Cześć!”, „Cześć!”, „Cześć!”, „Cześć!”) | Powtórzenie |
3 w (1, 2, 3) | Prawdziwe | Członkostwo |
for x in (1,2,3): print (x, end = '') | 1 2 3 | Iteracja |
Indeksowanie, wycinanie i macierze
Ponieważ krotki są sekwencjami, indeksowanie i krojenie działają w taki sam sposób w przypadku krotek, jak w przypadku łańcuchów, przy założeniu, że dane wejściowe -
T=('C++', 'Java', 'Python')
Wyrażenie Pythona | Wyniki | Opis |
---|---|---|
T [2] | 'Pyton' | Przesunięcia zaczynają się od zera |
T [-2] | 'Jawa' | Negatywne: policz od prawej |
T [1:] | („Java”, „Python”) | Cięcie na plasterki pobiera sekcje |
Brak ograniczników otaczających
Żaden otaczający separator nie jest żadnym zestawem wielu obiektów, oddzielonych przecinkami, zapisanymi bez symboli identyfikujących, tj. Nawiasy dla list, nawiasy dla krotek itp., Domyślnie są to krotki, jak wskazano w tych krótkich przykładach.
Wbudowane funkcje krotki
Python zawiera następujące funkcje krotek -
Sr.No. | Opis funkcji |
---|---|
1 |
cmp (tuple1, tuple2)
Porównuje elementy obu krotek. |
2 |
len (krotka)
Podaje całkowitą długość krotki. |
3 |
max (krotka)
Zwraca element z krotki o maksymalnej wartości. |
4 |
min (krotka)
Zwraca element z krotki o wartości minimalnej. |
5 |
krotka (seq)
Konwertuje listę na krotkę. |