Listor ( lista ) i Python. Lista funktioner och metoder

I programmering är listor kanske en lika användbar datastruktur som arrayer. Vad är listor, hur skapar man dem? Hur arbetar man med listor i Python? Du kommer att lära dig om detta från vår artikel.

Vad är listor i Python?

Listor ( lista ) i Python. Lista funktioner och metoder
Python-datatyper: Listor

Listor kan delvis identifieras med arrayer, men skillnaden och fördelen med listningar (annars kallas de även listningar) är att de kan kombinera olika datatyper. Det vill säga, listningen öppnar upp fler möjligheter för att lagra vilken sekvens av objekt som helst. En variabel, som kallas en lista, innehåller en referens till en struktur i minnet som innehåller referenser till alternativa strukturer.

En lista i Python är en ordnad samling objekt av blandade typer som kan modifieras och vars objekt kan skilja sig åt.

Vad betyder det? Låt oss ta en titt på definitionen i detalj.

Storleken på listan kan ändras, minskas, nya rader kan läggas till. Du kan också ändra hela strukturen i listan. Tänk på att varje gång en metod i en lista används ändras den ursprungliga listan, inte kopian.

För större tydlighet kan du tänka på en lista i Python som en lista över produkter som måste köpas i en butik. Om, när du gör en shoppingplan, alla nödvändiga föremål är placerade under varandra, och var och en av dem har sin egen rad, innehåller listan i Python alla element separerade med kommatecken och inom hakparenteser så att Python kan förstå det en lista anges här. Elementen är omgivna av citattecken. Detta är ett obligatoriskt villkor, eftersom varje element är en separat rad.

Sätt att skapa en lista

Gå vidare till det klassiska exemplet, låt oss skapa en lista som vi kommer att använda och ändra i framtiden. Det finns flera sätt att skapa listor.

En av dem är applikationen inbyggd funktionslista( ). För att göra detta måste du bearbeta alla objekt som kan itereras (en sträng, en tuppel eller en befintlig lista). I det här fallet en sträng.

Här är vad som händer i slutändan:

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

Det andra exemplet visar att listor kan innehålla ett obegränsat antal mycket olika objekt. Listan kan också förbli tom.

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

Nästa, tredje sättet att skapa listor är det så kallade listgenerator.

Listgeneratorn är en syntaktisk konstruktion för att skapa listor. Det liknar for-slingan.

>>> c = [c * 3 för c i 'lista'] >>> c ['lll', 'iii', 'sss', 'ttt']

Det kan också användas för att skapa mer voluminösa strukturer:

>>> c = [c * 3 för c i 'lista' om c != 'i'] >>> c ['lll', 'sss', 'ttt'] >>> c = [c + d för c i 'lista' om c != 'i' för d i 'spam' om d != 'a'] >>> c ['ls', 'lp', 'lm', 'ss', 'sp' , 'sm', 'ts', 'tp', 'tm']

Denna genereringsmetod är dock inte alltid effektiv när man sammanställer flera listor. Därför är det lämpligt att använda en for-loop för att generera listor.

Om du behöver hänvisa till något element från listan, används index. Varje element har sitt eget index.

Indexet är numret på elementet i listan.

Om du vill fylla listan med upprepade, identiska element, används symbolen *. Till exempel måste du lägga till tre identiska siffror i listan: [100] * 3.

Listningsfunktioner

funktioner – detta är kanske den största fördelen med Python framför andra programmeringsspråk. Grundläggande inbyggda funktioner kan tillämpas på listor.

Tänk på de mest populära av dem:

  • list(range( )) – om uppgiften är att skapa en sekventiell lista, används intervallfunktionen. Denna funktion har följande former:
  1. intervall (slut). Den används när det är nödvändigt att skapa en lista från noll till ett ändligt tal.
  2. intervall (start, slut). Både start- och slutnummer anges.
  3. intervall (start, slut, steg). Stegparametern anger urvalskarakteristiken. Till exempel, om du behöver välja vart femte nummer från en sekvens från 1 till 21, kommer den resulterande listningen att se ut så här: [10,15, 20].

Räckviddsfunktionen kan minska mängden kod avsevärt.

  • lin (lista) – låter dig ta reda på hur många element som finns i listan.
  • sorterad (lista, [nyckel]) – sorterar objekten i listan i stigande ordning.
  • max (lista) – returnerar det största elementet.
  • min (lista) – motsatt funktion – låter dig returnera elementet med minimivärdet.

Du kan även använda andra inbyggda funktioner:

  • lista (tuppel) – Konverterar ett tupelobjekt till en lista.
  • summa(lista) – summerar alla element i listan om alla värden är siffror, gäller både heltal och decimaler. Men hon får det inte alltid rätt. Om det finns ett icke-numeriskt element i listan, kommer funktionen att ge ett felmeddelande: "TypeError: operandtyp(er) som inte stöds för +: 'int' och 'str'".

Listningsmetoder

Listor ( lista ) i Python. Lista funktioner och metoder
Lista över Python-metoder

Låt oss gå tillbaka till vår lista över varor att köpa i butiken och kalla det shoplist:

butikslista = []

Överväg sedan listningsmetoderna:

  • append(item) – med dess hjälp kan du lägga till ett element i listan. I det här fallet kommer det nya elementet att vara i slutet.

Låt oss fylla vår nya lista med rätt produkter:

shoplist.append(bröd)

shoplist.append(mjölk)

  • lista.förlänga(A) – lägger till "lista till lista". Denna funktion sparar tid eftersom du kan lägga till flera objekt samtidigt. Låt oss säga att vi redan har en lista över frukter, vi måste lägga till dem i huvudlistan.

shoplist.extend(fruits)

  • infoga(index, objekt) – infogar på elementet med det angivna indexet det angivna värdet före det angivna indexet.
  • lcount(artikel) – visar antalet repetitioner av elementet.
  • lista.ta bort(objektet) är den motsatta funktionen lista.lägga till (x). Den kan användas för att ta bort alla element. Om det valda objektet inte finns i listan rapporteras ett fel.
  • pop([index]) – tar bort det markerade elementet och returnerar det på samma sätt. Om elementet inte anges tas det sista elementet bort från listan.
  • sortera ([nyckel]) – placerar elementen i listningen i stigande ordning, men du kan också ange en funktion.
  • index(artikel) – visar indexet för det först valda elementet.
  • Du kan utöka listan, det vill säga spegla alla dess element, med metoden reverse(lista). Det sista elementet blir det första, det näst sista elementet blir det andra och så vidare.
  • En kopia av listan skapas med kommandot kopia (lista).
  • deepcopy(lista) – djupkopiering.
  • Ta bort alla listelement med metoden tydlig lista).

Det är värt att notera att listningsmetoder skiljer sig från strängmetoder genom att de omedelbart ändrar listan, det vill säga det finns inget behov av att returnera resultatet av exekvering.

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

Följande är ett exempel på hur man arbetar med listor:

>>> 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]

Kommentera uppropet