Python

Liste over skæringspunkt i Python

Liste over skæringspunkt i Python
Der findes mange objektvariabler i python til lagring af forskellige datatyper. Det liste er en af ​​disse variabler og kan gemme forskellige datatyper til forskellige behov. Nogle gange er vi nødt til at finde almindelige, usædvanlige eller både almindelige og usædvanlige dataelementer fra de mange lister til programmeringsformål. Python indeholder flere indbyggede funktioner og operatører, der kan udføre disse typer opgaver for Python-sæt. At finde almindelige data fra flere lister kaldes listekrydsning, men der er ingen operatør eller indbygget funktion til lister som sæt til at finde de almindelige dataelementer fra flere lister. Denne vejledning viser dig, hvordan du skærer lister i Python.

Vejkryds

Inden du begynder på denne vejledning, vil begrebet skæringspunkt blive forklaret. Nedenfor er to angivet som et eksempel:

Liste1 = [4, 7, 23, 9, 6, 11]
Liste2 = [6, 5, 1, 20, 9, 7, 4, 3]

Efter at krydset er anvendt, hvis resultatet er gemt på en anden liste, måske navngivet List3, vil det indeholde følgende data.

Liste3 = [4, 6, 7, 9]

Den grafiske gengivelse af Liste 3 er vist nedenfor:

Eksempel 1: Skæringslister via metoden set ()

Følgende eksempel viser, hvordan du kan krydse to lister ved hjælp af sæt() metode og & operatør. To lister, navngivet liste1 og liste2, erklæres her. Begge disse lister indeholder numeriske værdier. Den tredje liste genereres ved at konvertere liste 1 og liste 2 til sættet via sættet() metode og anvendelse af krydset ved hjælp af & operatør. Derefter udskrives værdierne for de tre lister.

#!/ usr / bin / env python3
# Definer liste1
liste1 = [22, 8, 45, 11, 34, 9, 20, 7]
# Definer liste2
liste2 = [12, 9, 20, 78, 53, 8, 2, 30,31]
# Opret liste3 ved at krydse liste1 og liste2
liste3 = liste (sæt (liste1) & sæt (liste2))
# Udskriv liste1
print ("Værdierne for liste1: \ n", liste1)
# Udskriv liste2
print ("Værdierne for liste2: \ n", liste2)
# Udskriv liste 3
print ("Værdierne for liste3 efter skæring af liste1 og liste2: \ n", liste3)

Produktion

Følgende output vises efter kørsel af scriptet. Tre værdier er fælles for begge lister. Disse værdier er 8, 9 og 20 og vises i indholdet af den tredje liste.

Eksempel 2: Krydsende lister via krydsningsmetoden ()

Der er ingen direkte, indbygget metode til, at listeobjektet finder ud af skæringsværdierne mellem to lister. Sættet har dog en indbygget metode, navngivet vejkryds(), for at finde ud af de fælles værdier mellem sætene. En brugerdefineret funktion, navngivet skæringslister (), er defineret i det følgende script for at finde ud af de fælles værdier mellem de to lister. En begrænsning ved dette sæt er, at det kun kan indeholde numeriske data. En listevariabel kan indeholde forskellige typer datastrenge, herunder numerisk, boolsk osv. I scriptet, liste1 og liste2 indeholder alle strengdata inklusive og tekst. Scriptet udskriver alle almindelige streng- og numeriske værdier imellem liste1 og liste2.

#!/ usr / bin / env python3
 
# Definer funktionen til at returnere skæringspunktet mellem to lister
def intersectLists (liste1, liste2):
retur sæt (liste1).kryds (liste2)
 
# Definer liste1
list1 = ['Hej', '7', '8', '10', '2']
# Definer liste2
list2 = ['8', '34', 'Hej', '2', '21', '1', 10]
"Ring til den brugerdefinerede funktion for at gemme
krydsresultatet for liste1 og liste2
i liste3 "
list3 = intersectLists (liste1, liste2)
# Udskriv liste1
print ("Værdierne for liste1: \ n", liste1)
# Udskriv liste2
print ("Værdierne for liste2: \ n", liste2)
# Udskriv liste3
print ("Værdierne for liste3 efter skæring af liste1 og liste2: \ n", liste3)

Produktion

Følgende output vises efter kørsel af scriptet. Her er fælles værdier mellem de to lister '2', '8' og 'Hej.''

Eksempel 3: Krydsning af lister via loop-metoden

De to foregående eksempler viser listekryds ved hjælp af indbyggede funktioner. Følgende eksempel viser listekrydsning uden nogen indbygget funktion. Dette kan opnås ved hjælp af sløjfen. To lister med tekstdata er erklæret i scriptet. Det til loop bruges her til at finde ud af de almindelige tekstværdier mellem liste1 og liste2, og der er gemt i variablen, liste3. Dernæst udskrives værdierne for disse tre listevariabler.

#!/ usr / bin / env python3
 
# Definer liste1
list1 = ['Farhan', 'Abir', 'Akash', 'Meena', 'Mazher']
# Definer liste2
list2 = ['Meena', 'Moyna', 'Nobel', 'Naher', 'Abir', 'Farheen']
# Find krydset ved hjælp af for loop, og gem resultatet i liste3
liste3 = [værdi for værdi i liste1 hvis værdi i liste2]
 
# Udskriv liste1
print ("Værdierne for liste1: \ n", liste1)
# Udskriv liste2
print ("Værdierne for liste2: \ n", liste2)
# Udskriv liste 3
print ("Værdierne for liste3 efter skæring af liste1 og liste2: \ n", liste3)

Produktion

Følgende output vises efter kørsel af scriptet. Her er de fælles tekstværdier for de to lister 'Abir' og 'Meena.''

Eksempel 4: Krydsning af enkle og indlejrede lister via metoden filter ()

Følgende eksempel viser skæringspunktet mellem en simpel liste og en indlejret liste. Det filter() metode og lambda funktion bruges i scriptet til at gennemføre krydset mellem liste1 og liste2. Når en liste indeholder en eller flere lister som listeelementer, kaldes listen en indlejret liste. Her, liste1 er en simpel liste, og liste2 er en indlejret liste, mens liste3 indeholder skæringsværdierne for liste1 og liste2.

#!/ usr / bin / env python3
 
# Definer en simpel liste
liste1 = [22, 8, 45, 11, 34, 9, 20, 7]
# Definer en indlejret liste
liste2 = [[12, 9, 20], [78, 11, 53, 8], [2, 30, 31, 45]]
# Opret liste3 ved at krydse liste1 og liste2 ved hjælp af filter ()
list3 = [liste (filter (lambda n: n i liste1, liste)) til liste i liste2]
 
# Udskriv liste1
print ("Værdierne for liste1: \ n", liste1)
# Udskriv liste2
print ("Værdierne for liste2: \ n", liste2)
# Udskriv liste3
print ("Værdierne for liste3 efter skæring af liste1 og liste2: \ n", liste3)

Produktion

Følgende output vises efter kørsel af scriptet. List2-variablen indeholder tre andre lister som listeelementer. Så resultatet viser krydset mellem disse tre underlister i liste2 med liste1.

Konklusion

Listekrydsning er en nyttig måde at finde de fælles værdier mellem lister, der indeholder et stort antal listeelementer. Metoder til at udføre listekrydsning med og uden indbyggede funktioner vises i denne vejledning. Efter at have læst denne artikel skal konceptet med listekrydset være klart, og du skal kunne anvende listekryds i dit script ved at følge den måde, der vises i denne vejledning.

Bedste spil at spille med håndsporing
Oculus Quest introducerede for nylig den gode idé om håndsporing uden controllere. Med et stadigt stigende antal spil og aktiviteter, der udfører supp...
Sådan vises OSD-overlay i fuldskærms Linux-apps og -spil
Afspilning af fuldskærmsspil eller brug af apps i distraktionsfri fuldskærmstilstand kan afskære dig fra relevante systemoplysninger, der er synlige i...
Top 5 spiloptagelseskort
Vi har alle set og elsket streaming af gameplay på YouTube. PewDiePie, Jakesepticye og Markiplier er kun nogle af de bedste spillere, der har tjent mi...