python tuple tutorial with hands examples
Udforsk begrebet Tuple i Python og Tuple vs List i denne vejledning med eksempler:
I Python har vi fire indsamlingsdatatyper som nævnt nedenfor:
- Liste
- Sæt
- Ordbog
- Tuple
I denne vejledning vil vi se nærmere på Tuple in Python og dens forskellige operationer. Gå ikke glip af at læse gennem vores Hele spektret af Python-selvstudier .
I Python er tuplen en datastruktur og ligner en matrix, der bruges til at gemme flere data på én gang. Hvis du har erfaring med andre programmeringssprog som Java, C, C ++ osv., Vil du være bekendt med begrebet arrays, så tuple er næsten det samme som arrays.
Hvad du lærer:
- Hvad er en Tuple?
- Tuple vs liste
- Oprettelse af en Tuple
- Adgang til værdier i Tuple
- Negativ indeksering
- Opskæring af tuplen
- Ændring af en tuple
- Konvertering af liste til Tuple
- Konvertering af Tuple til streng
- Sorter Tuple i Python
- Pakning og udpakning af Tuple
- NamedTuple
- Returner Tuple
- Tupleindeks uden for rækkevidde
- Sletning af Tuple
- Grundlæggende Tuple-operationer
- Indbyggede Tuples-metoder
- Konklusion
- Anbefalet læsning
Hvad er en Tuple?
En Tuple er en datastruktur, der bruges til at gemme flere data på én gang. Dataene, der er gemt i en tuple, er heterogene, og det gør det faktisk til det mest kraftfulde træk ved tuplen i Python. Vi kan også gemme flere data af forskellige datatyper som streng, heltal og objekter i en enkelt tuple.
En tuple er uforanderlig i Python, og data kan derfor ikke ændres, når de er tildelt.
Der er adgang til data gemt i en tuple ved hjælp af deres indeks, for tupleindekset starter altid fra nul. Hvert element har et specifikt sted i tuplen, og alle disse data fås ved hjælp af indekset.
Tuple vs liste
- Liste i Python kan ændres (Værdier kan ændres), mens Tuple er uforanderlige (Værdier kan ikke ændres)
- Sammenlignet med listedatastrukturen giver tuple færre funktioner i Python.
- Da tupler er uforanderlige, øger det ydeevnen, da iterering i en tuple er hurtigere sammenlignet med listen.
Oprettelse af en Tuple
Data i en tuple lagres med komma-adskilt og er lukket i en parentes (). Tuples kan indeholde et vilkårligt antal genstande af forskellige typer.
Syntaks:
Tuple = (item1, item2, item3)
Eksempel: 1
Tuple = ()
Eksempel: 2
Tuple = (2, 4, 5.6)
Eksempel: 3
Tuple = (2, 5, 4.5, “Hi”)
Eksempel: 4
Tuple = (“Hi”, “Hello”, “Python”)
Hvis vi overholder ovenstående eksempler, har vi gemt elementer af forskellige datatyper med komma-adskilt, hvor 2 og 5 er af typen Heltal, 4,5 er af typen float og 'Hi' er af typen String. Vi kan også erklære en tom tupel.
pc-reparations- og optimeringsværktøj Windows 10
Vi kan også erklære en liste eller tuple inde i en tuple, og dette kaldes indlejret tuple.
Eksempel: 5
Tuple = (“Python”, (2, 4, 6), (4, 5.6, “Hi”)) print(“Contents of tuple is:”, Tuple)
Produktion:
Indholdet af tuple er: ('Python', (2, 4, 6), (4, 5.6, 'Hej'))
Hvis du overholder eksemplet ovenfor, har vi erklæret en liste og tuple inde i en anden tuple.
Hvis tuplen kun indeholder et element, betragtes det ikke som en tuple. Det skal være et efterfølgende komma at specificere tolken, at det er en tuple.
Lad os se i nedenstående eksempel
Eksempel: 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))
Produktion:
Type af min_tuple er:
Type af min_tuple er:
Type af min_tuple er:
Adgang til værdier i Tuple
Der er flere måder, hvorpå vi kan få adgang til de ting, der er til stede i tuplen i Python. Ved hjælp af et indeks kan vi få adgang til elementerne i tuplen. Indekset starter ved 0, og indekset skal altid være et heltal. Hvis vi bruger et andet indeks end et heltal som float, vil det resultere i TypeError.
Eksempel: 1
Tuple = (3, 5, 6.7, “Python”) print(“Tuple is:”, Tuple)
Produktion:
Tuple er: (3. 5. 6.7, “Python”)
I ovenstående eksempel har vi direkte udskrevet tuplen ved hjælp af udskrivningsfunktionen, og vi har ikke adgang til de enkelte elementer i tuplen.
Lad os få adgang til de enkelte elementer i tuplen.
Eksempel: 2
Tuple = (3, 5, 6.7, “Python”) print(“Third element of the Tuple is:”, Tuple(2))
Produktion:
Tredje element i Tuple er: 6.7
Eksempel: 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))
Produktion:
Det første element i Tuple er: 3
Sidste element i Tuple er: 'Python'
Vi kan også få adgang til de emner, der er til stede i den indlejrede tuple ved hjælp af indlejret indeksering.
Eksempel: 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))
Produktion:
Det første element i tuplen er: 'y'
Elementer, der findes på en anden liste eller tuple, er: 5.6
Som diskuteret i Python List tutorial værdierne inde i den indlejrede liste er lagret i form af en matrix, ligesom Tuple følger også det samme koncept.
P y t h o n
2 4 6
4 5.6 Hej
Så når vi prøver at få adgang til Tuple (0) (1), vil den pege på 1St.række og 2ndkolonne, så dataene bliver 'y'.
Tilsvarende, når vi prøver at få adgang til Liste (2) (1), vil den pege på 3rdrække og 2ndkolonne, så vil dataene være 5,6
Bemærk:Ovenstående koncept fungerer kun, når du forsøger at få adgang til elementerne i tuplen ved hjælp af den indlejrede indeksering.
Negativ indeksering
Vi kan også få adgang til data ved hjælp af et negativt indeks. Et negativt indeks starter altid fra -1 og -1 henviser til det sidste element, og -2 henviser til det sidste sekund-element og dermed sammen.
Husk altid, at positiv indeksering bruges til at gentage elementerne i en tuple fremad, mens negativ indeksering følger bagud.
Eksempel: 1
Tuple = (3, 5, 7.8) print(“Last element of the tuple is:”, Tuple(-1))
Produktion:
Sidste element i tuplen er: 7.8
Eksempel: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple(-3))
Produktion:
Det første element i tuplen er: 3
Opskæring af tuplen
Ved hjælp af skiveoperatøren (:) kan vi få adgang til en række elementer fra tuplen.
Eksempel: 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(:))
Produktion:
Elementerne fra 2. til 5. er: (2.5, 3, 4.9, 5)
Elementer, der begynder til 4. er: (1, 2.5, 3, 4.9)
Elementerne 4. til slut er: (4.9, 5, 6, 'Python')
Elementer fra start til slut er: (1, 2.5, 3, 4.9, 5, 6, 'Python')
Vi kan også få adgang til elementerne i tuplen ved hjælp af for loop.
Eksempel: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple(-3))
Produktion:
1
to
3.5
5
'Hej'
Ændring af en tuple
Som vi ved, er tuples uforanderlige i Python, data kan derfor ikke ændres, men lister er mutable. Således kan lister, der er til stede i tuplerne (indlejret tuple), ændres.
Eksempel: 1
Tuple = (3, 4.5, (4, 5, 6)) print(“Original Tuple is:”, Tuple) Tuple(2)(0) = 2 print(“Updated Tuple is:”, Tuple)
Produktion:
Original Tuple er: (3, 4.5, (4, 5, 6))
Opdateret Tuple er: (3, 4.5, (2, 5, 6))
Vi kan ikke bruge append () eller udvid () -funktionen i Tuple, da tupler er uforanderlige. Du kan heller ikke bruge funktionen Fjern () eller pop () også.
Konvertering af liste til Tuple
Vi kan konvertere en liste til Tuple ved hjælp af en Python-indbygget funktion kaldet tuple ().
Syntaks:
tuple(arg1)
Funktionen Tuple () accepterer et argument, og argumentet skal være navnet på listevariablen.
Eksempel: 1
List = (2, 4, 5.6, “Hi”) print(“Original List is:”, List) Tuple = tuple(List) print(“After converting to tuple is:”, Tuple)
Produktion:
Oprindelig liste er: (2, 4, 5.6, “Hej”)
Efter konvertering til tuple er: (2, 4, 5.6, 'Hej')
Konvertering af Tuple til streng
Vi kan også konvertere Tuple til streng på 2 måder.
Fremgangsmåde: 1
hvor man kan se anime gratis
Ved hjælp af den indbyggede metode join () fra String kan vi konvertere Tuple til String.
Eksempel: 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)
Produktion:
Før konvertering til streng: ('P', 'y', 't', 'h', 'o', 'n')
Efter konvertering til streng: 'Python'
Fremgangsmåde: 2
reducere () metode fra funktionsværktøjerne bruges til at konvertere Tuple til streng. Denne metode sammenkæder tegnet, der er til stede i tuplen, og producerer en streng.
Eksempel: 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)
Produktion:
Før konvertering til streng: ('P', 'y', 't', 'h', 'o', 'n')
Efter konvertering til streng: 'Python'
Bemærk: Du kan kun konvertere Tuple til String, hvis Tuple indeholder tegn. Hvis tuplen indeholder et enkelt element af typen heltal eller float, vil det kaste en fejl.
Eksempel: 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)
Produktion:
Før konvertering til streng: ('P', 'y', 't', 'h', 'o', 'n', 4, 6.5)
Traceback (seneste opkald sidst):
Fil “”, linje 1, i
str = ”. slutte sig til (Tuple)
TypeError: sekvenselement 6: forventet str instans, int fundet
Sorter Tuple i Python
I python har vi en indbygget funktion kaldet sorteret () for at sortere elementerne i tuplen.
Syntaks:
sorted(arg1)
Den sorterede () metode accepterer et argument, som er et variabelnavn.
Eksempel: 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)
Produktion:
Før sortering er Tuple: (2, 4, 6, 1, 4, 7.8, 2.7)
Efter sortering er Tuple: (1, 2, 2.7, 4, 4, 6, 7.8)
Pakning og udpakning af Tuple
Python giver en vigtig funktion kaldet pakning og udpakning. I pakningen lægger vi værdien i en tuple, men i udpakningen udpakker vi alle disse værdier, der er gemt i tuplerne, til variabler.
Eksempel: 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)
Produktion:
Pakede tupler er: (“John”, 23567, “Software Engineer”)
Medarbejdernavn er: John
Medarbejder-id er: 23567
Medarbejdertitel er: Software Engineer
Hvis du bemærker i ovenstående tilfælde på linje nummer 2, pakker vi tuplen ud i nogle variabler.
Bemærk: Antallet af emner i tuplen skal være lig med antallet af variabler i den udpakkede tuple.
NamedTuple
Python giver en speciel type funktion kaldet namedtuple (), der kommer fra opsamlingsmodulet.
Navngivne tupler ligner en ordbog, der indeholder nøgler og værdier. Men forskellen er, at vi i ordbogen kun kan få adgang til værdien ved hjælp af nøglen, men NamedTuple understøtter adgang fra både værdien og nøglen.
Der er tre måder, hvorpå vi kan få adgang til værdierne af nemaedtuple ().
- Adgang via indeks
- Adgang med nøgle
- Adgang med getattr () -metoden
Eksempel: 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’))
Produktion:
Medarbejdernavn er: John
Medarbejder-id er: 23567
Medarbejdertitel er: Software Engineer
Vi har også tre konverteringsoperationer, der understøttes af funktionen navngivne ().
- _lave()
- _asdict ()
- ** (Dobbeltstart) operatør
Eksempel: 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))
Produktion:
Medarbejder (navn = 'Mathew', ID = '45783', Titel = 'Softwareudvikler')
OrderedDict ((('navn', 'John'), ('ID', '23567'), ('Titel', 'Softwareingeniør'))))
Medarbejder (navn = 'Helen', ID = 56873, titel = 'testleder')
Returner Tuple
Vi kan returnere indsamlingen af værdier eller tupler ved hjælp af returopgørelsen.
Eksempel: 1
def my_fun(): name = “John” ID = 23567 Title = “Software Engineer” return (name, ID, Title) employee = my_fun() print(“Employee detail is:”, employee)
Produktion:
Medarbejderdetaljer er: ('John', 23567, 'Software Engineer')
Tupleindeks uden for rækkevidde
Indeks uden for rækkevidde er en af de almindelige undtagelser, som vi får, når vi arbejder med Tuples eller liste. Denne undtagelse forekommer normalt, når du prøver at få adgang til et element uden for tuplen, rækkevidde, hvilket betyder, hvis duplerne kun indeholder 3 elementer, og hvis du prøver at få adgang til de 4thelement, så vil det få tupleindeks uden for rækkevidden.
Eksempel: 1
Tuple = (4, 7, 1.2, “Hi”) print(Tuple(4))
Produktion:
Traceback (seneste opkald sidst):
Fil “”, linje 1, i
Tuple (4)
IndexError: tupleindeks uden for området
Hvis du observerer i ovenstående eksempel, forsøger vi at få adgang til det element, der er til stede ved 5thposition, men der er ikke noget element til stede der, så det kaster tupleindeks uden for rækkevidden.
Sletning af Tuple
Vi kan ikke slette individuelle elementer fra tuplen, da tupler er uforanderlige. Den eneste måde at slette elementerne fra tuplen er at slette hele tuplen.
Python giver en indbygget funktion 'del' til at slette hele tuplen.
Eksempel: 1
Tuple = (2, 4.5, “Python”) print(“Before deleting the tuple:”, Tuple) del Tuple print(“After Deleting the tuple:”, Tuple)
Produktion:
Før du sletter tuplen: (2, 4.5, “Python”)
Traceback (seneste opkald sidst):
Fil “”, linje 1, i
udskrive (“Efter sletning af tuplen:”, Tuple)
NameError: navn 'Tuple' er ikke defineret
I ovenstående eksempel forsøger vi efter at have slettet tuplen at udskrive tuplen, men den findes ikke længere. Derfor kaster det NameError.
Grundlæggende Tuple-operationer
Ved hjælp af tupler kan vi udføre nogle grundlæggende operationer som sammenkædning, gentagelse osv.
Lad os se alle de grundlæggende operationer med nogle eksempler.
Eksempel: 1 - Tuple-sammenkædning
Vi kan sammenkoble tuplerne ved hjælp af '+' operatoren.
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)
Produktion:
Tuple 1 er: (3, 5, “Hej”)
Tuple 2 er: (5.6, 1, “Python”)
Sammenkædning af Tuple 1 og Tuple 2 er: (3, 5, 'Hej', 5.6, 1, 'Python')
Eksempel: 2 - Gentagelse af tuple
Tuple gentagelse betyder gentagelse af tuplerne flere gange. Dette kan opnås ved hjælp af '*' operatøren.
Tuple = (3, 1, 5.6, “Python”) print(“Before the repetition the tuple is:”, Tuple) print(“After the repetition the tuple is:”, Tuple*3)
Produktion:
hvor man kan se animes online gratis
Før gentagelsen er tuplen: (3, 1, 5.6, “Python”)
Efter gentagelsen er tuplen: (3, 1, 5.6, “Python”, 3, 1, 5.6, “Python”, 3, 1, 5.6, “Python”)
Eksempel: 3 - Medlemsoperatør
Ved hjælp af 'in' operatoren kan vi kontrollere, om et bestemt element er til stede i Tuple. Det returnerer den boolske værdi Sand, hvis elementet er til stede i tuplen, og returnerer Falsk, hvis elementet ikke er til stede.
Tuple = (3, 2, 6) print(“Is element 2 present in Tuple:”, 2 in Tuple)
Produktion:
Er element 2 til stede i Tuple: Sandt
Indbyggede Tuples-metoder
Python giver et par indbyggede metoder til tupler som beskrevet i nedenstående tabel.
Metoder | Beskrivelse |
---|---|
nogen() | Returnerer Sandt, hvis et element findes i en tuple og returnerer Falsk, hvis tuplen er tom |
min () | Returnerer det mindste element (heltal) i Tuple |
maks () | Returnerer det største element (heltal) i Tuple |
len () | Returnerer længden af Tuple |
sorteret () | Bruges til at sortere alle elementerne i Tuple |
sum() | Returnerer summen af alle elementer (heltal) i tuplerne |
Lad os se, hvordan man bruger alle metoderne med et eksempel.
Eksempel: 1 - enhver () metode
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))
Produktion:
Er der nogen elementer til stede i Tuple: Sandt
Er der nogen elementer til stede i Tuple1: Falsk
Eksempel: 2 - min () metode
Tuple = (3, 5.6, 5, 8) print(“Smallest element in the tuples is:”, min(Tuple))
Produktion:
Mindste element i tuplerne er: 3
Eksempel: 3 - max () metode
Tuple = (3, 5.6, 5, 8) print(“Largest element in the tuples is:”, max(Tuple))
Produktion:
Det største element i tuplerne er: 8
Eksempel: 4 - len () metode
Tuple = (3, 5.6, 5, 8) print(“Length of the tuple is:”, len(Tuple))
Produktion:
Tuplens længde er: 4
Eksempel: 5 - sorteret () metode
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))
Produktion:
Sorteret heltal er: (1, 2, 3.5, 4, 6)
Sorteret tegn er: ('a', 'e', 'i', 'o', 'u')
Eksempel: 6 - sum () metode
Num = (3, 5.1, 2, 9, 3.5) print('Sum of all the numbers in the tuples is:', sum(Num))
Produktion:
Summen af alle numrene i tuplerne er: 22.6
Konklusion
En tuple er en af datatyperne i Python, som også kaldes datastruktur.
En Python Tuple bruges til at gemme et stort antal værdier af alle datatyper i en enkelt variabel. Tuples er uforanderlige, hvorfor det øger ydeevnen ved at få adgang til værdierne fra tuplen.
Når du arbejder med tupler, er det obligatorisk at huske alle de tuple-indbyggede metoder.
Håber du ville have fået enorm viden om begrebet Tuple in Python !!
Anbefalet læsning
- Python DateTime-tutorial med eksempler
- Python-vejledning til begyndere (GRATIS Python-træning)
- Pythons hovedfunktionsvejledning med praktiske eksempler
- Dybdegående formørkelsesvejledninger til begyndere
- Python-strengfunktioner
- Python String Split Tutorial
- JAVA-vejledning til begyndere: 100+ praktiske Java-videovejledninger
- Python-variabler