Lister ( liste ) i Python. Liste funktioner og metoder

I programmering er lister måske en lige så nyttig datastruktur som arrays. Hvad er lister, hvordan opretter man dem? Hvordan arbejder man med lister i Python? Du vil lære om dette fra vores artikel.

Hvad er lister i Python?

Lister ( liste ) i Python. Liste funktioner og metoder
Python-datatyper: Lister

Lister kan delvist identificeres med arrays, men forskellen og fordelen ved lister (ellers kaldes de også lister) er, at de kan kombinere forskellige datatyper. Det vil sige, at listen åbner flere muligheder for at gemme enhver sekvens af objekter. En variabel, kaldet en liste, indeholder en reference til en struktur i hukommelsen, der indeholder referencer til alternative strukturer.

En liste i Python er en ordnet samling af objekter af blandede typer, der kan ændres, og hvis objekter kan være forskellige.

Hvad betyder det? Lad os se nærmere på definitionen.

Størrelsen på fortegnelsen kan ændres, reduceres, nye linjer kan tilføjes til den. Du kan også ændre hele listens struktur. Husk, at hver gang en metode i en liste bruges, ændres den originale liste, ikke kopien.

For større klarhed kan du tænke på en liste i Python som en liste over produkter, der skal købes i en butik. Hvis, når du laver en indkøbsplan, er alle de nødvendige varer placeret under hinanden, og hver af dem har sin egen linje, så indeholder listen i Python alle elementerne adskilt af kommaer og i firkantede parenteser, så Python kan forstå det en liste er angivet her. Elementerne er omgivet af anførselstegn. Dette er en obligatorisk betingelse, fordi hvert element er en separat linje.

Måder at oprette en liste på

Gå videre til det klassiske eksempel, lad os oprette en liste, som vi vil bruge og ændre i fremtiden. Der er flere måder at generere fortegnelser på.

En af dem er applikationen indbygget funktionsliste( ). For at gøre dette skal du behandle ethvert objekt, der kan itereres (en streng, en tupel eller en eksisterende liste). I dette tilfælde en streng.

Her er hvad der sker i sidste ende:

>>> list('liste') ['c', 'n', 'i', 'c', 'o', 'to']

Det andet eksempel viser, at lister kan indeholde et ubegrænset antal meget forskellige objekter. Fortegnelsen kan også forblive tom.

>>> s = [] # Tom liste >>> l = ['s', 'p', ['isok'], 2] >>> s [] >>> l ['s', 'p' , ['isok'], 2]

Den næste, tredje måde at danne fortegnelser på er den såkaldte listegenerator.

Listegeneratoren er en syntaktisk konstruktion til oprettelse af lister. Det ligner for-løkken.

>>> c = [c * 3 for c i 'liste'] >>> c ['lll', 'iii', 'sss', 'ttt']

Det kan også bruges til at skabe mere voluminøse strukturer:

>>> c = [c * 3 for c i 'liste', hvis c != 'i'] >>> c ['lll', 'sss', 'ttt'] >>> c = [c + d for c i 'liste' hvis c != 'i' for d i 'spam' hvis d != 'a'] >>> c ['ls', 'lp', 'lm', 'ss', 'sp' , 'sm', 'ts', 'tp', 'tm']

Denne genereringsmetode er dog ikke altid effektiv, når der kompileres flere lister. Derfor er det tilrådeligt at bruge en for-løkke til at generere lister.

Hvis du har brug for at henvise til et element fra listen, så bruges indekser. Hvert element har sit eget indeks.

Indekset er nummeret på elementet på listen.

Hvis du ønsker at udfylde listen med gentagne, identiske elementer, bruges symbolet *. For eksempel skal du tilføje tre identiske numre til listen: [100] * 3.

Listefunktioner

funktioner – dette er måske den største fordel ved Python i forhold til andre programmeringssprog. Grundlæggende indbyggede funktioner kan anvendes på lister.

Overvej de mest populære af dem:

  • liste(område( )) – hvis opgaven er at oprette en sekventiel liste, så bruges rækkeviddefunktionen. Denne funktion har følgende former:
  1. rækkevidde (ende). Det bruges, når det er nødvendigt at oprette en liste fra nul til et endeligt tal.
  2. område (start, slut). Både start- og slutnumre er angivet.
  3. interval (start, slut, trin). Step-parameteren angiver valgkarakteristikken. For eksempel, hvis du skal vælge hvert femte tal fra en sekvens fra 1 til 21, så vil den resulterende liste se ud som: [10,15, 20].

Range-funktionen kan reducere mængden af ​​kode betydeligt.

  • hør (liste) – giver dig mulighed for at finde ud af, hvor mange elementer der er på listen.
  • sorteret (liste, [nøgle]) – sorterer objekterne på listen i stigende rækkefølge.
  • max (liste) – returnerer det største element.
  • min (liste) – modsat funktion – giver dig mulighed for at returnere elementet med minimumsværdien.

Du kan også bruge andre indbyggede funktioner:

  • liste (tuple) – Konverterer et tupelobjekt til en liste.
  • sum(liste) – summerer alle elementer i listen, hvis alle værdier er tal, gælder for både heltal og decimaler. Hun får det dog ikke altid rigtigt. Hvis der er et ikke-numerisk element i listen, vil funktionen give en fejl: "TypeError: ikke-understøttede operandtyper for +: 'int' og 'str'".

Listemetoder

Lister ( liste ) i Python. Liste funktioner og metoder
Liste over Python-metoder

Lad os gå tilbage til vores liste over varer, der kan købes i butikken og kalde det shoplist:

butiksliste = []

Overvej derefter listemetoderne:

  • tilføj (vare) – med dens hjælp kan du tilføje et element til listen. I dette tilfælde vil det nye element være i slutningen.

Lad os fylde vores nye liste med de rigtige produkter:

shoplist.append(brød)

shoplist.append(mælk)

  • liste.forlænge(A) – tilføjer "liste til liste". Denne funktion sparer tid, da du kan tilføje flere elementer på samme tid. Lad os sige, at vi allerede har en liste over frugter, vi skal tilføje dem til hovedlisten.

shoplist.extend(frugt)

  • indsæt (indeks, vare) – indsætter på elementet med det angivne indeks den angivne værdi før det angivne indeks.
  • lcount (vare) – viser antallet af gentagelser af elementet.
  • liste.fjerne(post) er den modsatte funktion liste.Tilføj (x). Den kan bruges til at fjerne ethvert element. Hvis det valgte element ikke er på listen, rapporteres der en fejl.
  • pop([indeks]) – fjerner det valgte element og returnerer det på samme måde. Hvis elementet ikke er angivet, fjernes det sidste element fra listen.
  • sorter ([nøgle]) – sætter elementerne i listen i stigende rækkefølge, men du kan også angive en funktion.
  • indeks (vare) – viser indekset for det først valgte element.
  • Du kan udvide listen, det vil sige spejle alle dens elementer ved hjælp af metoden omvendt (liste). Det sidste element bliver det første, det næstsidste element bliver det andet, og så videre.
  • En kopi af listen oprettes med kommandoen kopi(liste).
  • deepcopy (liste) – dyb kopiering.
  • Fjern alle listeelementer ved hjælp af metoden Ryd liste).

Det er værd at bemærke, at listemetoder adskiller sig fra strengmetoder ved, at de straks ændrer listen, det vil sige, at der ikke er behov for at returnere resultatet af udførelsen.

>>> l = [1, 2, 3, 5, 7] >>> l.sort() >>> l [1, 2, 3, 5, 7] >>> l = l.sort() > >> print(l) Ingen

Følgende er et eksempel på arbejde med lister:

>>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >>> a.insert(2, -1) >>> a.append(333) >>> a [66.25, 333, -1, 333, 1, 1234.5, 333] >>> a.index(333) 1 >> > a.remove(333) >>> a [66.25, -1, 333, 1, 1234.5, 333] >>> a.reverse() >>> a [333, 1234.5, 1, 333, -1, 66.25 ] >>> a.sort() >>> a [-1, 1, 66.25, 333, 333, 1234.5]

Giv en kommentar