python tuple tutorial with hands examples
Istražite koncept Tuple u Pythonu i Tuple vs List u ovom vodiču s primjerima:
U Pythonu imamo četiri vrste podataka o kolekciji kako je spomenuto u nastavku:
- Popis
- Postavi
- Rječnik
- Korijen
U ovom uputstvu detaljno ćemo pogledati Tuple u Pythonu i njegove razne operacije. Ne propustite pročitati naš Čitav niz tutorijala za Python .
U Pythonu, nabor je struktura podataka i sličan je nizu koji se koristi za pohranu više podataka odjednom. Ako imate iskustva u drugim programskim jezicima kao što su Java, C, C ++ itd., Tada ćete biti upoznati s konceptom nizova, tako da je tuple gotovo isto što i nizovi.
Što ćete naučiti:
- Što je tople?
- Tuple vs List
- Stvaranje korijena
- Pristup vrijednostima u Tupleu
- Negativno indeksiranje
- Rezanje korijena
- Mijenjanje korijena
- Pretvaranje popisa u tuple
- Pretvaranje tuple u niz
- Poredaj Tuple u Python
- Pakiranje i raspakiranje korpice
- NazvanTuple
- Povratak Tuple
- Indeks korpica izvan je raspona
- Brisanje korpice
- Osnovne operacije uvlačenja
- Ugrađene metode korijena
- Zaključak
- Preporučena literatura
Što je tople?
Tuple je struktura podataka koja se koristi za pohranu više podataka odjednom. Podaci pohranjeni u naboru su heterogeni i to ga uistinu čini najsnažnijom značajkom nabora u Pythonu. Možemo pohraniti više podataka različitih vrsta podataka kao što su String, Integers i objekti, kao i u jedan skup.
Korpa je nepromjenjiva u Pythonu, pa se podaci ne mogu mijenjati nakon što su dodijeljeni.
Podaci pohranjeni u korpici pristupaju se pomoću njihovog indeksa, jer će indeks korpica uvijek početi od nule. Svaki element ima određeno mjesto u korpici i svim tim podacima pristupa se uz pomoć indeksa.
Tuple vs List
- Popis u Pythonu je promjenjiv (Vrijednosti se mogu mijenjati) dok je Tuple nepromjenjiv (Vrijednosti se ne mogu mijenjati)
- U usporedbi sa strukturom podataka popisa, tuple nudi manje značajki u Pythonu.
- Kako su nabori nepromjenjivi, to povećava izvedbu jer je ponavljanje u naboru brže u usporedbi s popisom.
Stvaranje korijena
Podaci u tupleu pohranjuju se odvojenim zarezom i zatvaraju u zagradu (). Tuple mogu sadržavati bilo koji broj predmeta različitih vrsta.
Sintaksa:
Tuple = (item1, item2, item3)
Primjer: 1
Tuple = ()
Primjer: 2
Tuple = (2, 4, 5.6)
Primjer: 3
Tuple = (2, 5, 4.5, “Hi”)
Primjer: 4
Tuple = (“Hi”, “Hello”, “Python”)
Ako promatramo gornje primjere, pohranili smo stavke različitih vrsta podataka s odvojenim zarezima gdje su 2 i 5 tipa Integer, 4.5 je tipa float, a 'Hi' je tipa String. Možemo proglasiti i prazan tuple.
najbolji softver za virtualni stroj za Windows 10
Također možemo deklarirati popis ili nabor unutar nabora, a to se naziva ugniježđeni nabor.
Primjer: 5
Tuple = (“Python”, (2, 4, 6), (4, 5.6, “Hi”)) print(“Contents of tuple is:”, Tuple)
Izlaz:
Sadržaj korpice je: ('Python', (2, 4, 6), (4, 5.6, 'Hi'))
Ako promatrate gornji primjer, proglasili smo popis i koru u drugoj korpi.
Ako korpica sadrži samo jedan element, tada se ne smatra tupom. To bi trebao biti zarez koji određuje tumač da je to korijen.
Da vidimo, u primjeru u nastavku
Primjer: 6
my_tuple = (“Python”) Print(“Type of my_tuple is:”, type(my_tuple)) my_tuple = (10) Print(“Type of my_tuple is:”, type(my_tuple)) my_tuple = (“Python”, ) Print(“Type of my_tuple is:”, type(my_tuple))
Izlaz:
Vrsta my_tuple je:
Vrsta my_tuple je:
Vrsta my_tuple je:
Pristup vrijednostima u Tupleu
Postoji nekoliko načina na koje možemo pristupiti elementima koji se nalaze unutar korpice u Pythonu. Uz pomoć indeksa možemo pristupiti elementima korice. Indeks započinje s 0, a indeks uvijek treba biti cijeli broj. Ako koristimo indeks koji nije cjelobrojni poput float, to će rezultirati TypeError.
Primjer: 1
Tuple = (3, 5, 6.7, “Python”) print(“Tuple is:”, Tuple)
Izlaz:
Tuple je: (3. 5. 6.7, 'Python')
U gornjem primjeru izravno smo ispisali tuple pomoću funkcije ispisa i ne pristupamo pojedinim elementima tuple.
Pristupimo pojedinačnim elementima korijena.
Primjer: 2
Tuple = (3, 5, 6.7, “Python”) print(“Third element of the Tuple is:”, Tuple(2))
Izlaz:
Treći element Tuplea je: 6.7
Primjer: 3
Tuple = (3, 5, 6.7, “Python”) print(“First element of the Tuple is:”, Tuple(0)) print(“Last element of the Tuple is:”, Tuple(3))
Izlaz:
Prvi element Tuplea je: 3
Posljednji element Tuplea je: 'Python'
Stavkama koje su prisutne u ugniježđenom naboru također možemo pristupiti uz pomoć ugniježđenog indeksiranja.
Primjer: 4
Tuple = (“Python”, (2, 4, 6), (4, 5.6, “Hi”)) print(“First element of the tuple is:”, Tuple(0)(1)) print(“Items present inside another list or tuple is:”, Tuple(2)(1))
Izlaz:
Prvi element korpice je: 'y'
Stavke prisutne na drugom popisu ili naboru su: 5.6
Kao što je raspravljeno u Vodič za Python List vrijednosti unutar ugniježđenog popisa pohranjuju se u obliku matrice, slično tome, Tuple također slijedi isti koncept.
P y t h o n
2 4 6
4 5.6 Bok
Dakle, kada pokušamo pristupiti Tupleu (0) (1), tada će ukazati na 1svred i 2ndstupac pa će podaci biti 'y'.
Slično tome, kada pokušamo pristupiti Popisu (2) (1), tada će ukazati na 3rdred i 2ndstupac, pa će podaci biti 5.6
Bilješka:Gornji koncept djeluje samo kada pokušavate pristupiti stavkama korice pomoću ugniježđenog indeksiranja.
Negativno indeksiranje
Podatcima možemo pristupiti i pomoću negativnog indeksa. Negativni indeks uvijek će počinjati od -1, a -1 se odnosi na posljednji element, a -2 odnosi se na posljednju drugu stavku, a time i zajedno.
Uvijek imajte na umu da se pozitivno indeksiranje koristi za ponavljanje stavki korice naprijed, dok negativno indeksiranje slijedi natrag.
Primjer: 1
Tuple = (3, 5, 7.8) print(“Last element of the tuple is:”, Tuple(-1))
Izlaz:
Posljednji element korpice je: 7.8
Primjer: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple(-3))
Izlaz:
Prvi element korijena je: 3
Rezanje korijena
Pomoću operatora rezanja (:) možemo iz niza pristupiti nizu elemenata.
Primjer: 1
Tuple = (1, 2.5, 3, 4.9, 5, 6, “Python”) print(“Elements from 2nd to 5th is: ”, Tuple(1:5)) print(“Elements beginning to 4th is: ”, Tuple(:-3)) print(“Elements 4th to end is: ”, Tuple(3:)) print(“Elements from start to end is: “, Tuple(:))
Izlaz:
Elementi od 2. do 5. je: (2.5, 3, 4.9, 5)
Elementi koji počinju do 4. je: (1, 2.5, 3, 4.9)
Elementi od 4. do kraja su: (4.9, 5, 6, ‘Python’)
Elementi od početka do kraja su: (1, 2.5, 3, 4.9, 5, 6, 'Python')
Također možemo pristupiti elementima koji su prisutni u korpici pomoću petlje for.
Primjer: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple(-3))
Izlaz:
1
dva
3.5
5
'Bok'
Mijenjanje korijena
Kao što znamo, Tuples su nepromjenjivi u Pythonu, stoga se podaci ne mogu mijenjati, ali popisi su promjenjivi. Tako se popisi prisutni unutar korijena (ugniježđeni korijen) mogu mijenjati.
Primjer: 1
Tuple = (3, 4.5, (4, 5, 6)) print(“Original Tuple is:”, Tuple) Tuple(2)(0) = 2 print(“Updated Tuple is:”, Tuple)
Izlaz:
Izvorni tuple je: (3, 4,5, (4, 5, 6))
Ažurirani tuple je: (3, 4,5, (2, 5, 6))
Ne možemo koristiti funkciju append () ili extension () u Tupleu jer su korice nepromjenjive. Također, ne možete koristiti i funkciju remove () ili pop ().
Pretvaranje popisa u tuple
Popis možemo pretvoriti u Tuple pomoću Python ugrađene funkcije koja se naziva tuple ().
Sintaksa:
tuple(arg1)
Funkcija Tuple () prihvaća jedan argument, a argument bi trebao biti naziv varijable popisa.
Primjer: 1
List = (2, 4, 5.6, “Hi”) print(“Original List is:”, List) Tuple = tuple(List) print(“After converting to tuple is:”, Tuple)
Izlaz:
Izvorni popis je: (2, 4, 5.6, „Bok“)
Nakon pretvorbe u tuple je: (2, 4, 5.6, 'Bok')
Pretvaranje tuple u niz
Tuple također možemo pretvoriti u String na dva načina.
Pristup: 1
Koristeći ugrađenu metodu join () iz Stringa, možemo pretvoriti Tuple u String.
Primjer: 1
def convertTupleToString(my_tuple): s = ‘’.join(my_tuple) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Izlaz:
Prije pretvorbe u String: („P“, „y“, „t“, „h“, „o“, „n“)
Nakon konverzije u String: ‘Python’
Pristup: 2
reducira () metoda iz functools koristi se za pretvaranje Tuplea u String. Ova metoda spaja znak prisutan u korpici i stvara niz.
Primjer: 2
import operator import functools def convertTupleToString(my_tuple): s = functools.reduce(operator.add, (my_tuple)) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Izlaz:
Prije pretvorbe u String: („P“, „y“, „t“, „h“, „o“, „n“)
Nakon konverzije u String: ‘Python’
Bilješka: Tuple možete pretvoriti u string samo ako tuple sadrži znakove. Ako tuple sadrži bilo koju stavku tipa integer ili float, izbacit će pogrešku.
Primjer: 3
def convertTupleToString(my_tuple): s = ‘’.join(my_tuple) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’, 4, 6.5) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Izlaz:
Prije pretvorbe u niz: („P“, „y“, „t“, „h“, „o“, „n“, 4, 6,5)
Traceback (najnoviji zadnji poziv):
Datoteka “”, redak 1, u
str = '. pridruži se (Tuple)
TypeError: stavka sekvence 6: očekivana instanca str, pronađena int
Poredaj Tuple u Python
U pythonu imamo ugrađenu funkciju koja se naziva sorted () za sortiranje elemenata korpice.
Sintaksa:
sorted(arg1)
Metoda sorted () prihvaća jedan argument koji je ime varijable.
Primjer: 1
def sortTuple(my_tuple): sort = sorted(my_tuple) return sort Tuple = (2, 4, 6, 1, 4, 7.8, 2.7) print(“Before sorting the Tuple is:”, Tuple) sortedTuple = sortTuple(Tuple) print(“After sorting the Tuple is:”, sortedTuple)
Izlaz:
Prije sortiranja Tuple je: (2, 4, 6, 1, 4, 7.8, 2.7)
Nakon sortiranja Tuple je: (1, 2, 2.7, 4, 4, 6, 7.8)
Pakiranje i raspakiranje korpice
Python pruža važnu značajku koja se naziva pakiranje i raspakiranje. Pakiranjem stavljamo vrijednost u skup, ali raspakiravanjem izdvajamo sve one vrijednosti pohranjene u korpice u varijable.
Primjer: 1
Tuple = (“John”, 23567, “Software Engineer”) (eName, eID, eTitle) = Tuple print(“Packed tuples is:”, Tuple) print(“Employee name is:”, eName) print(“Employee ID is:”, eID) print(“Employee Title is:”, eTitle)
Izlaz:
Spakirane korpe su: („John“, 23567, „Software Engineer“)
Ime zaposlenika je: John
ID zaposlenika je: 23567
Naslov zaposlenika je: Softverski inženjer
Ako primijetite u gornjem slučaju u retku broj 2, raspakiravamo tuple u neke varijable.
Bilješka: Broj predmeta u korpici trebao bi biti jednak broju varijabli u nepakiranom korpusu.
NazvanTuple
Python pruža posebnu vrstu funkcije koja se naziva namedtuple () koja dolazi iz modula za prikupljanje.
Nazvani Tuples slični su rječniku koji sadrži ključeve i vrijednosti. Ali razlika je u tome što u rječniku vrijednosti možemo pristupiti samo pomoću ključa, ali NamedTuple podržava pristup i iz vrijednosti i iz ključa.
kako dodati elemente u niz
Tri su načina na koja možemo pristupiti vrijednostima nemaedtuple ().
- Pristup indeksom
- Pristup ključem
- Pristup metodom getattr ()
Primjer: 1
import collections Employee = collections.namedtuple(‘Employee’, (‘name’, ‘ID’, ‘Title’)) Emp = Employee(‘John’, ‘23567’, ‘Software Engineer’) #Accessing using index print(“Employee name is:”, Emp(0)) # Accessing using key print(“Employee ID is:”, Emp.ID) #Access by getattr() method print(“Employee Title is:”, getattr(Emp, ‘Title’))
Izlaz:
Ime zaposlenika je: John
ID zaposlenika je: 23567
Naslov zaposlenika je: Softverski inženjer
Također imamo podržane tri operacije pretvorbe za funkciju namedtuples ().
- _napraviti()
- _asudba ()
- ** Operator (dvostruki start)
Primjer: 2
import collections Employee = collections.namedtuple(‘Employee’, (‘name’, ‘ID’, ‘Title’)) Emp = Employee(‘John’, ‘23567’, ‘Software Engineer’) Emp1 = (‘Mathew’, ‘45783’, “Software Developer”) Emp2 = {‘name’ : “Helen”, ‘ID’ : 56873, ‘Title’ : “Test Lead”} #Using _make() print(Employee._make(Emp1)) #Using _asdict() print(Emp._asdict()) #Using ** operator print(Employee(**Emp2))
Izlaz:
Zaposlenik (ime = 'Mathew', ID = '45783', Naslov = 'Razvijač softvera')
OrderedDict (((„ime“, „Ivan“), („ID“, „23567“), („Naslov“, „Softverski inženjer“)))
Zaposlenik (ime = 'Helen', ID = 56873, naslov = 'Test Lead')
Povratak Tuple
Kolekciju vrijednosti ili korice možemo vratiti pomoću naredbe return.
Primjer: 1
def my_fun(): name = “John” ID = 23567 Title = “Software Engineer” return (name, ID, Title) employee = my_fun() print(“Employee detail is:”, employee)
Izlaz:
Pojedinosti o zaposleniku su: (‘John’, 23567, ‘Software Engineer’)
Indeks korpica izvan je raspona
Indeks izvan dosega jedna je od uobičajenih iznimki koje ćemo dobiti tijekom rada s Tuplesima ili popisom. Ova se iznimka obično događa kada pokušate pristupiti stavci izvan korijena, raspona, što znači da korice sadrže samo 3 elementa i ako pokušate pristupiti 4thelement, tada će izvući indeks korpica izvan iznimke raspona.
Primjer: 1
Tuple = (4, 7, 1.2, “Hi”) print(Tuple(4))
Izlaz:
Traceback (najnoviji zadnji poziv):
Datoteka “”, redak 1, u
Korijen (4)
IndexError: indeks korpica izvan dosega
Ako primijetite u gornjem primjeru, pokušavamo pristupiti elementu koji je prisutan na 5thpoložaj, ali tamo nema elementa, pa izbacuje indeks tuple izvan iznimke raspona.
Brisanje korpice
Ne možemo izbrisati pojedinačne elemente iz korice jer su korpice nepromjenjive. Jedini način da izbrišete elemente iz korijena je brisanje cijelog korpusa.
Python pruža ugrađenu funkciju 'del' za brisanje cijele korpice.
Primjer: 1
Tuple = (2, 4.5, “Python”) print(“Before deleting the tuple:”, Tuple) del Tuple print(“After Deleting the tuple:”, Tuple)
Izlaz:
Prije brisanja korpice: (2, 4.5, “Python”)
Traceback (najnoviji zadnji poziv):
Datoteka “”, redak 1, u
ispis ('Nakon brisanja korpice:', Tuple)
NameError: ime 'Tuple' nije definirano
U gornjem primjeru, nakon brisanja korpice pokušavamo ispisati koricu, ali ona više ne postoji. Stoga baca NameError.
Osnovne operacije uvlačenja
Koristeći korijene možemo izvoditi neke osnovne operacije poput spajanja, ponavljanja itd.
Pogledajmo sve osnovne operacije s nekoliko primjera.
Primjer: 1 - Spajanje tuple
Korice možemo povezati pomoću operatora ‘+’.
Tuple1 = (3, 5, “Hi”) Tuple2 = (5.6, 1, “Python”) print(“Tuple 1 is:”, Tuple1) print(“Tuple 2 is”, Tuple2) print(“Concatenation of Tuple 1 and Tuple 2 is:”, Tuple1+Tuple2)
Izlaz:
Tuple 1 je: (3, 5, 'Bok')
Tuple 2 je: (5.6, 1, 'Python')
Spajanje Tuple 1 i Tuple 2 je: (3, 5, 'Bok', 5.6, 1, 'Python')
Primjer: 2 - Ponavljanje kompleta
Ponavljanje nabora znači ponavljanje elemenata nabora više puta. To se može postići pomoću operatora ‘*’.
Tuple = (3, 1, 5.6, “Python”) print(“Before the repetition the tuple is:”, Tuple) print(“After the repetition the tuple is:”, Tuple*3)
Izlaz:
Primjer regularnog izraza c ++
Prije ponavljanja, korpica je: (3, 1, 5.6, 'Python')
Nakon ponavljanja, korpica je: (3, 1, 5.6, 'Python', 3, 1, 5.6, 'Python', 3, 1, 5.6, 'Python')
Primjer: 3 - Članstvo Operator
Pomoću operatora ‘in’ možemo provjeriti je li određeni element prisutan u Tupleu. Vraća logičku vrijednost True ako je element prisutan u korpici i vraća False ako element nije prisutan.
Tuple = (3, 2, 6) print(“Is element 2 present in Tuple:”, 2 in Tuple)
Izlaz:
Je li element 2 prisutan u Tupleu: Tačno
Ugrađene metode korijena
Python nudi nekoliko ugrađenih metoda za korijene kako je opisano u donjoj tablici.
Metode | Opis |
---|---|
bilo koji () | Vraća True ako je bilo koji element prisutan u naboru i vraća False ako je nabor prazan |
min () | Vraća najmanji element (Integer) Tuplea |
maks. () | Vraća najveći element (Integer) Tuplea |
len () | Vraća duljinu korijena |
sortirano () | Koristi se za sortiranje svih elemenata Tuplea |
iznos() | Vraća zbroj svih elemenata (cijelih brojeva) Tuplesa |
Pogledajmo kako na primjeru koristiti sve metode.
Primjer: 1 - bilo koja () metoda
Tuple = (3, 1, 4.5) print(“Is there any elements present in Tuple:”, any(Tuple)) Tuple1 = () print(“Is there any elements present in Tuple1:”, any(Tuple1))
Izlaz:
Postoje li elementi u Tupleu: Istina
Postoje li neki elementi u Tuple1: False
Primjer: metoda 2 - min ()
Tuple = (3, 5.6, 5, 8) print(“Smallest element in the tuples is:”, min(Tuple))
Izlaz:
Najmanji element u korijenima je: 3
Primjer: metoda 3 - max ()
Tuple = (3, 5.6, 5, 8) print(“Largest element in the tuples is:”, max(Tuple))
Izlaz:
Najveći element u korijenima je: 8
Primjer: metoda 4 - len ()
Tuple = (3, 5.6, 5, 8) print(“Length of the tuple is:”, len(Tuple))
Izlaz:
Duljina korijena je: 4
Primjer: metoda 5 - sorted ()
Tuple = (2, 3.5, 1, 6, 4) print(“Sorted integer is:”, sorted(Tuple)) Tuple1 = (‘e’, ‘a’, ‘u’, ‘o’, ‘i’) print(“Sorted character is:”, sorted(Tuple1))
Izlaz:
Poredani cijeli broj je: (1, 2, 3.5, 4, 6)
Poredani znak je: ('a', 'e', 'i', 'o', 'u')
Primjer: metoda 6 - sum ()
Num = (3, 5.1, 2, 9, 3.5) print('Sum of all the numbers in the tuples is:', sum(Num))
Izlaz:
Zbroj svih brojeva u korpicama iznosi: 22.6
Zaključak
Tuple je jedan od tipova podataka u Pythonu, koji se naziva i strukturom podataka.
Python Tuple koristi se za pohranu velikog broja vrijednosti bilo kojih vrsta podataka u jednu varijablu. Korijeni su nepromjenjivi, stoga poboljšavaju izvedbu pristupa vrijednostima iz korijena.
Kada radite s korijenima, tada je obavezno zapamtiti sve metode ugrađene u korijene.
Nadam se da biste stekli neizmjerno znanje o konceptu Tuplea u Pythonu !!
Preporučena literatura
- Python DateTime Vodič s primjerima
- Vodič za Python za početnike (Praktični BESPLATNI trening za Python)
- Vodič za glavne funkcije Pythona s praktičnim primjerima
- Dubinski vodiči za pomračenje za početnike
- Python string funkcije
- Vodič za dijeljenje Python Stringa
- JAVA Tutorial za početnike: 100+ praktičnih Java Video tutorijala
- Python varijable