Python TUPLE – Pak, udpak, sammenlign, udskæring, slet, nøgle

Hvad er Tuple Matching i Python?

Tuple Matching i Python er en metode til at gruppere tuplerne ved at matche det andet element i tuplerne. Det opnås ved at bruge en ordbog ved at kontrollere det andet element i hver tuple i python-programmering. Vi kan dog lave nye tupler ved at tage portioner af eksisterende tupler.

Tuple syntaks

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

For at skrive en tom tuple skal du skrive som to parenteser, der ikke indeholder noget-

tup1 = ();

For at skrive tuple for en enkelt værdi skal du inkludere et komma, selvom der er en enkelt værdi. Også i slutningen skal du skrive semikolon som vist nedenfor.

Tup1 = (50,);

Tupelindeks begynder ved 0, og de kan sammenkædes, skæres i skiver og så videre.

Tuple Opgave

Python har tuple-tildelingsfunktion, som giver dig mulighed for at tildele mere end én variabel ad gangen. Her har vi tildelt tuple 1 med personens oplysninger som navn, efternavn, fødselsår osv. og en anden tuple 2 med værdierne som nummer (1,2,3,….,7).

For eksempel,

(navn, efternavn, fødselsår, yndlingsfilm og år, erhverv, fødested) = Robert

Her er koden,

tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida');
tup2 = (1,2,3,4,5,6,7);
print(tup1[0])
print(tup2[1:4])
  • Tuple 1 indeholder en liste over oplysninger om Robert
  • Tuple 2 indeholder liste over numbers i det
  • Vi kalder værdien for [0] i tupel og for tupel 2 kalder vi værdien mellem 1 og 4
  • Kør koden- Den giver navnet Robert for første tupel, mens den for anden tupel giver nummer (2,3 og 4)

Pakning og udpakning

Ved pakning placerer vi værdi i en ny tuple, mens vi ved udpakning trækker disse værdier tilbage til variabler.

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

Sammenligning af tupler

En sammenligning operator i Python kan arbejde med tupler.

Sammenligningen starter med et første element af hver tupel. Hvis de ikke sammenlignes med =,< eller >, fortsætter det til det andet element og så videre.

Det starter med at sammenligne det første element fra hver af tuplerne

Lad os studere dette med et eksempel-

#tilfælde 1

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

#tilfælde 2

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

#tilfælde 3

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

Sag 1: Sammenligning starter med et første element i hver tupel. I dette tilfælde 5>1, så output a er større

Sag 2: Sammenligning starter med et første element i hver tupel. I dette tilfælde 5>5, hvilket ikke er entydigt. Så det fortsætter til næste element. 6>4, så output a er større

Sag 3: Sammenligning starter med et første element i hver tupel. I dette tilfælde 5>6, hvilket er falsk. Så den går ind i else-blokken og udskriver "b er større."

Brug af tupler som nøgler i ordbøger

Da tuples er hashbare, og listen ikke er, skal vi bruge tuple som nøglen, hvis vi skal lave en sammensat nøgle til brug i en ordbog.

Eksempel: Vi ville støde på en sammensat nøgle, hvis vi skal oprette en telefonbog, der kortlægger, fornavn, efternavn, telefonpar numbers, osv. Hvis vi antager, at vi har erklæret variablerne som sidste og første tal, kunne vi skrive en ordbogsopgave som vist nedenfor:

directory[last,first] = number

Inde brackets, udtrykket er en tupel. Vi kunne bruge tuple-tildeling i en for-løkke til at navigere i denne ordbog.

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

Denne løkke navigerer nøglerne i mappen, som er tupler. Den tildeler elementerne i hver tupel til sidste og første og udskriver derefter navnet og det tilsvarende telefonnummer.

Tuples og ordbog

Ordbog kan returnere listen over tuples ved at kalde elementer, hvor hver tuple er et nøgleværdipar.

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

Sletning af Tuples

Tuples er uforanderlige og kan ikke slettes. Du kan ikke slette eller fjerne elementer fra en tuple. Men at slette tuple helt er muligt ved at bruge søgeordet

del

Udskæring af Tuple

For at hente specifikke sæt af underelementer fra tuple eller liste, bruger vi denne unikke funktion kaldet slicing. Udskæring er ikke kun anvendelig til tuple, men også til array og liste.

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

Outputtet af denne kode vil være ('c', 'd').

Her er Python 2-koden for alle ovenstående eksempel

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]

Indbyggede funktioner med Tuple

For at udføre forskellige opgaver giver tuple dig mulighed for at bruge mange indbyggede funktioner som all(), any(), enumerate(), max(), min(), sorteret(), len(), tuple() osv.

Fordele ved tuple over liste

  • Iteration gennem tuple er hurtigere end med liste, da tupler er uforanderlige.
  • Tuples, der består af uforanderlige elementer, kan bruges som nøgle til ordbog, hvilket ikke er muligt med liste
  • Hvis du har data, der er uforanderlige, vil implementering af det som tuple garantere, at det forbliver skrivebeskyttet

Resumé

Python har tuple-tildelingsfunktion, som giver dig mulighed for at tildele mere end én variabel ad gangen.

  • Pakning og udpakning af Tuples
  • Ved pakning placerer vi værdi i en ny tuple, mens vi ved udpakning trækker disse værdier tilbage til variabler.
  • A sammenligning operator i Python kan arbejde med tupler.
  • Brug af tupler som nøgler i ordbøger
  • Tuples er hashable, og listen er ikke
  • Vi skal bruge tuple som nøglen, hvis vi skal lave en sammensat nøgle til brug i en ordbog
  • Ordbog kan returnere listen over tuples ved at kalde elementer, hvor hver tuple er et nøgleværdipar
  • Tuples er uforanderlige og kan ikke slettes. Du kan ikke slette eller fjerne elementer fra en tuple. Men at slette tuple helt er muligt ved at bruge søgeordet "del"
  • For at hente specifikke sæt af underelementer fra tuple eller liste, bruger vi denne unikke funktion kaldet slicing