Python TUPLE – Packa, packa upp, jämför, skiva, radera, nyckel

⚡ Smart sammanfattning

Python En tupel är en ordnad, oföränderlig samling värden skrivna inom parentes. Exemplen nedan täcker tupelpackning och -uppackning, jämförelse av tupler, användning av tupler som ordboksnycklar, borttagning, slicing och fördelarna med tupler jämfört med listor.

  • 📦 Definition: En tupel är en ordnad, oföränderlig samling skapad med parenteser.
  • 🔁 Packning/Uppackning: Gruppera värden i en tupel, t.ex.tracåterställ dem till variabler.
  • ⚖️ Jämförande: Tupler jämförs element för element från vänster till höger.
  • 🔑 Ordboksnycklar: Eftersom tupler är hashbara kan de fungera som sammansatta ordboksnycklar.
  • ✂️ Skiva: Hämta delelement från en tupel med hjälp av skivnotation.
  • 🚀 fördelar: Tupler är snabbare och skrivskyddade jämfört med listor.

Python tupel

Vad är Tuple Matching i Python?

Tuple Matching in Python är en metod för grouping tuplarna genom att matcha det andra elementet i tuplerna. Detta uppnås genom att använda en ordbok genom att kontrollera det andra elementet i varje tupel i Python-programmering. Vi kan dock skapa nya tupler genom att ta delar av befintliga tupler.

Tuppelsyntax

Tup = ('Jan','feb','march')

För att skriva en tom tupel måste du skriva som två parenteser som inte innehåller något-

tup1 = ();

För att skriva tupel för ett enskilt värde måste du inkludera ett kommatecken, även om det finns ett enda värde. Även i slutet måste du skriva semikolon som visas nedan.

Tup1 = (50,);

Tupelindex börjar på 0, och de kan sammanfogas, skivas och så vidare.

Tuppeluppgift

Python har tuppeltilldelningsfunktion som gör att du kan tilldela mer än en variabel åt gången. Här har vi tilldelat tuppel 1 med personens information som namn, efternamn, födelseår etc. och en annan tuppel 2 med värdena i som nummer (1,2,3,...,7).

Till exempel,

(namn, efternamn, födelseår, favoritfilm och år, yrke, födelseort) = Robert

Här är koden,

tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida');
tup2 = (1,2,3,4,5,6,7);
print(tup1[0])
print(tup2[1:4])
  • Tupel 1 innehåller lista med information om Robert
  • Tuple 2 innehåller en lista med nummer
  • Vi kallar värdet för [0] i tuppel och för tuppel 2 kallar vi värdet mellan 1 och 4
  • Kör koden- Det ger namnet Robert för första tuppel medan för andra tuppel ger det nummer (2,3 och 4)

Packning och packning

Vid packning lägger vi värde i en ny tupel medan vi vid uppackning ex...tracomvandla dessa värden till variabler.

x = ("Guru99", 20, "Education")    # tuple packing
(company, emp, profile) = x    # tuple unpacking
print(company)
print(emp)
print(profile)

Jämför tupler

En jämförelseoperatör i Python kan arbeta med tuplar.

Jämförelsen börjar med ett första element av varje tupel. Om de inte jämförs med =,< eller > går det vidare till det andra elementet och så vidare.

Det börjar med att jämföra det första elementet från var och en av tuplarna

Låt oss studera detta med ett exempel-

#fall 1

a=(5,6)
b=(1,4)
if (a>b):print("a is bigger")
else: print("b is bigger")

#fall 2

a=(5,6)
b=(5,4)
if (a>b):print("a is bigger")
else: print ("b is bigger")

#fall 3

a=(5,6)
b=(6,4)
if (a>b):print("a is bigger")
else: print("b is bigger")

Fall 1: Jämförelse börjar med ett första element i varje tupel. I detta fall 5>1, så utgången a är större

Fallet 2: Jämförelse börjar med ett första element i varje tupel. I det här fallet 5>5 vilket inte är avgörande. Så det går vidare till nästa element. 6>4, så utgången a är större

Fallet 3: Jämförelse börjar med ett första element i varje tupel. I detta fall 5>6 vilket är falskt. Så det går in i else-blocket och skriver ut "b är större."

Använda tupler som nycklar i ordböcker

Eftersom tuples är hashbara och list inte är det, måste vi använda tuple som nyckel om vi behöver skapa en sammansatt nyckel att använda i en ordbok.

Exempelvis: Vi skulle stöta på en sammansatt nyckel om vi behöver skapa en telefonkatalog som mappar, förnamn, efternamn, par av telefonnummer etc. Om vi ​​antar att vi har deklarerat variablerna som sista och första nummer, skulle vi kunna skriva en ordboksuppgift enligt nedan:

directory[last,first] = number

Innanför parenteserna är uttrycket en tupel. Vi skulle kunna använda tuppeltilldelning i en for-loop för att navigera i den här ordboken.

for last, first in directory:
print first, last, directory[last, first]

Denna loop navigerar nycklarna i katalogen, som är tupler. Den tilldelar elementen i varje tupel till sista och första och skriver sedan ut namnet och motsvarande telefonnummer.

Tuples och ordbok

Dictionary kan returnera listan med tupler genom att anropa objekt, där varje tupel är ett nyckelvärdespar.

a = {'x':100, 'y':200}
b = list(a.items())
print(b)

Ta bort Tuples

Tuples är oföränderliga och kan inte raderas. Du kan inte ta bort eller ta bort objekt från en tupel. Men att ta bort tuple helt är möjligt genom att använda nyckelordet

del

Skivning av Tuple

För att hämta specifika uppsättningar av underelement från tuple eller lista använder vi denna unika funktion som kallas slicing. Skivning är inte bara tillämplig på tupel utan också för array och list.

x = ("a", "b","c", "d", "e")
print(x[2:4])

Utdata från denna kod kommer att vara ('c', 'd').

Här är Python 2 Code för alla ovanstående exempel

tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida');
tup2 = (1,2,3,4,5,6,7);
print  tup1[0]
print  tup2[1:4]

#Packing and Unpacking
x = ("Guru99", 20, "Education")    # tuple packing
(company, emp, profile) = x    # tuple unpacking
print company
print emp
print profile

#Comparing tuples
#case 1
a=(5,6)
b=(1,4)
if (a>b):print "a is bigger"
else: print "b is bigger"

#case 2
a=(5,6)
b=(5,4)
if (a>b):print "a is bigger"
else: print "b is bigger"

#case 3
a=(5,6)
b=(6,4)
if (a>b):print "a is bigger"
else: print "b is bigger"

#Tuples and dictionary
a = {'x':100, 'y':200}
b = a.items()
print b 

#Slicing of Tuple
x = ("a", "b","c", "d", "e")
print x[2:4]

Inbyggda funktioner med Tuple

För att utföra olika uppgifter låter tuple dig använda många inbyggda funktioner som all(), any(), enumerate(), max(), min(), sorted(), len(), tuple(), etc.

Fördelar med tupel över lista

  • Iteration genom tupler är snabbare än med list, eftersom tupler är oföränderliga.
  • Tuples som består av oföränderliga element kan användas som nyckel för ordbok, vilket inte är möjligt med list
  • Om du har data som är oföränderlig, kommer implementering av den som tupel att garantera att den förblir skrivskyddad

Vanliga frågor

En tupel är oföränderlig och skrivs med parenteser, medan en lista är föränderlig och skrivs med hakparenteser. Tupler är snabbare och kan vara ordboksnycklar; listor är bättre när du behöver lägga till, ta bort eller ändra objekt.

Nej. Tupler är oföränderliga, så du kan inte ändra, lägga till eller ta bort deras element efter att de skapats. Om du behöver en modifierad version, skapa en ny tuple eller konvertera tuplen till en lista, ändra den och konvertera den tillbaka.

Lägg till ett avslutande kommatecken efter värdet, till exempel t = (50,). Utan kommateckenet, Python behandlar parenteserna som en vanlig gruppping och skapar ett heltal, inte en tupel. Det är kommatecknet som gör det till en tupel med ett enda element.

Använd tuple() för att omvandla en lista till en tupel, till exempel tuple([1, 2, 3]). För att gå åt andra hållet, använd list() på tupeln. Konvertering är praktiskt när du tillfälligt måste ändra data som annars är fixerade.

Ja. En tupel kan innehålla blandade typer som strängar, heltal och flyttal, och den kan innehålla andra tupler eller listor. Kapslade tupler låter dig modellera rader, koordinater eller poster där varje position har en tydlig betydelse.

En namngiven tupel, från samlingsmodulen, ger varje position ett namn så att du kan läsa fält efter etikett istället för index. Den bibehåller tupelns oföränderlighet och hastighet samtidigt som den gör koden mycket mer läsbar, som en lättviktsklass.

Tupler lagrar fasta, ordnade data såsom arrayformer, koordinater och datamängdsposter. Bibliotek som NumPy och Pandas använder tupler för former och indexnycklar. Deras oföränderlighet gör att maskininlärningsdata säkert kan skickas runt utan oavsiktliga ändringar.

Ja. Dessa AI-assistenter kan generera tupelpacknings-, uppacknings- och segmenteringskod från en vanlig engelsk prompt och sedan förklara varje rad. De föreslår också när en tupel passar bättre än en lista. Granska och testa alltid genererad kod innan du använder den.

Sammanfatta detta inlägg med: