Hvordan sette sammen lister i Python

Hvordan Sette Sammen Lister I Python



Python-lister er allsidige og mye brukte datastrukturer som tillater lagring og manipulering av samlinger av gjenstander. En vanlig operasjon når du arbeider med lister er sammenkobling som innebærer å kombinere to eller flere lister for å lage en ny liste. Denne prosessen er spesielt nyttig når du slår sammen dataene eller oppretter en større liste fra mindre. Listesammenkobling kan oppnås ved hjelp av ulike metoder, og å forstå disse teknikkene er grunnleggende for å effektivt arbeide med lister i Python. Enten du slår sammen lister med tall, strenger eller komplekse objekter, lar det å mestre listesammenkoblingen manipulere og organisere dataene på forskjellige måter.

Eksempel 1: Sammenslåing av lister med '+'-operatør

Vi kan bruke '+'-operatoren i Python for å sette sammen listene. Ved å bruke '+'-operatoren kan du slå sammen to eller flere lister for å danne en ny liste. Når du bruker '+'-operatoren med lister, opprettes en ny liste og elementene i de originale listene kopieres til den nye listen i den rekkefølgen de vises.

Her er et enkelt eksempel:







ark 1 = [ 1 , 2 , 3 ]

liste 2 = [ 4 , 5 , 6 ]

resultatliste = liste1 + liste2

skrive ut ( resultatliste )

Vi har to lister i denne illustrasjonen: 'liste1' og 'liste2'. Vi bruker '+'-operatoren for å integrere dem i en enkelt liste. Når den brukes med lister, setter '+'-operatoren dem sammen, noe som betyr at den kobler elementene i den andre listen til slutten av den første. Så, etter å ha utført «resultatliste = liste1 + liste2″, vil «resultatliste» inneholde elementene til både «liste1» og «liste2» i den rekkefølgen de ble sammenkoblet.





Selv om denne metoden er kortfattet, husk at den oppretter en ny liste som kanskje ikke er effektiv for store lister på grunn av kostnadene ved å lage en kopi.





Eksempel 2: Bruk av Extend()-metoden

Elementene til en iterabel kan legges til på slutten av en eksisterende liste ved å bruke extend()-metoden. Den endrer den opprinnelige listen på plass, i motsetning til '+'-operatoren som oppretter en ny liste.

La oss anta at vi har en liste over elever i en klasse, og vi ønsker å utvide denne listen ved å legge til navnene på nye elever som nylig ble med ved å bruke extend()-metoden. Slik kan du gå frem:



klasse_elever = [ 'Alice' , 'Bella' , 'Charlie' ]

nye_studenter = [ 'David' , 'Eva' , 'Adam' ]

klasse_elever. forlenge ( nye_studenter )

skrive ut ( 'Oppdatert liste over studenter:' , klasse_elever )

I dette eksemplet inneholder den opprinnelige listen som er 'klasse_elever' navnene på eksisterende elever. «new_students»-listen inkluderer navnene på elevene som nylig ble med i klassen. Ved å bruke extend()-metoden legger vi til navnene på de nye studentene på slutten av den opprinnelige listen.

Eksempel 3: Bruk av '+='-operatøren for sammenkobling

Operatoren “+=” er en forkortelse for extend()-metoden. Den modifiserer listen på plass, og kombinerer elementene i den høyre listen til den venstre listen.

Anta at vi har en liste over favorittfarger og vi ønsker å oppdatere den ved å legge til flere farger ved å bruke '+='-operatoren.

favoritt_farger = [ 'blå' , 'grønn' , 'rød' ]

tilleggsfarger = [ 'lilla' , 'oransje' , 'gul' ]

favoritt_farger + = tilleggsfarger

skrive ut ( 'Oppdaterte favorittfarger:' , favoritt_farger )

I dette scenariet starter vi med en liste over favorittfargene våre som er representert med 'favorittfarger'. Deretter har vi noen nye farger som vi ønsker å inkludere i listen 'additional_colors'. Ved å bruke «+=-operatoren» kombinerer vi de nye fargene med våre eksisterende favoritter, og endrer «favorittfarger»-listen.

Etter operasjonen, når vi skriver ut 'Våre oppdaterte favorittfarger', kan vi se følgende resultat:

Eksempel 4: Bruk av '*'-operatøren

Operatoren '*' kan brukes til listereplikering. Men når den brukes på lister, kan den sette dem sammen ved å gjenta elementene.

Her er et eksempel:

original_list = [ 1 , 2 , 3 ]

concatenated_list = original_list * 3

skrive ut ( concatenated_list )

I dette tilfellet starter vi med en 'original_list' som inneholder elementene [1, 2, 3]. Ved å bruke '*'-operatoren lager vi en ny liste som er 'sammenhengende_liste' som består av tre repetisjoner av elementene fra den opprinnelige listen.

Selv om denne tilnærmingen er mindre vanlig for sammenkobling, viser den fleksibiliteten til Pythons operatører.

Eksempel 5: Bruk av Itertools.chain()-funksjonen

Itertools.chain()-funksjonen er en del av 'itertools'-modulen og brukes til å sette sammen de iterable (som lister, tuples eller andre iterable objekter) til en enkelt 'iterable'. I motsetning til noen andre sammenkoblingsmetoder, oppretter ikke itertools.chain() en ny liste, men produserer en iterator over elementene i inndata-iterablene.

fra itertools import kjede

L1 = [ 1 , 2 , 3 ]

L2 = [ 'x' , 'og' , 'Med' ]

concatenated_iterable = kjede ( L1 , L2 )

resultatliste = liste ( concatenated_iterable )

skrive ut ( resultatliste )

I det gitte eksemplet har vi to lister – 'L1' inneholder de numeriske verdiene [1, 2, 3] og 'L2' inneholder de alfabetiske tegnene ['x', 'y', 'z']. Ved å bruke funksjonen itertools.chain() setter vi sammen disse listene til en enkelt iterabel, representert av 'concatenated_iterable'. List()-funksjonen brukes deretter for å konvertere den iterable til en liste som resulterer i den kombinerte listen [1, 2, 3, 'x', 'y', 'z'].

Eksempel 6: Listesnitt

Ved å tilby en rekke indekser, er listeskjæring en teknikk som lar oss hente et undersett av en liste. Det innebærer å bruke kolon (:)-operatoren innenfor hakeparentesene for å indikere start-, stopp- og eventuelt trinnverdier.

Her er eksempelkoden:

faktisk_liste = [ 1 , 2 , 3 , 4 , 5 ]

sliced_list = faktisk_liste [ 1 : 4 ]

skrive ut ( sliced_list )

Vi begynner illustrasjonen med en original liste med tall som er betegnet som 'faktisk_liste' som inneholder elementene [1, 2, 3, 4, 5]. Vi trekker ut et spesifikt segment av listen ved å bruke listeskjæringen som er en kraftig funksjon i Python. 'faktisk_liste[1:4]'-stykket brukes i dette tilfellet, og det plukker elementene fra indeks 1 til indeks 3 (men ikke fra indeks 4). Resultatet er en ny liste, kalt 'sliced_list', som inneholder den skivede delen [2, 3, 4].

Eksempel 7: Sammenkobling med Zip()-funksjonen

Zip()-funksjonen kombinerer elementene fra flere iterables, og lager par eller tupler av tilsvarende elementer. Hver iterasjons elementer i samme indeks brukes til å lage disse parene.

studenter = [ 'Alice' , 'Bob' , 'Charlie' ]

karakterer = [ 85 , 92 , 78 ]

student_karakter_par = glidelås ( studenter , karakterer )

resultat_dikt = dikt ( student_karakter_par )

skrive ut ( 'Student-klassepar:' , resultat_dikt )

I dette eksemplet parer zip()-funksjonen elevnavnene fra 'studenter'-listen med deres korresponderende karakterer fra 'karakterer'-listen, noe som resulterer i en ordbok der hver elev er knyttet til sin respektive karakter.

Konklusjon

Avslutningsvis tilbyr Python en rekke måter å sette sammen listene på, hver med sine fordeler. Ettersom vi utforsket de forskjellige metodene, fra den enkle '+'-operatoren til den mer nyanserte zip()-funksjonen, ble det tydelig at Python henvender seg til forskjellige programmeringsstiler og -preferanser. Avhengig av arbeidet på hånden, vil faktorer som lesbarhet, minneeffektivitet og typen data som behandles avgjøre hvilken metode som er best.