Liste-metoder

I artikkelen om metoder ser vi at strenger har tilknyttede metoder. For eksempel at koden

print("hipp hurra!".upper())

bruker metoden upper() til å gjøre om strengen "hipp hurra!" til store bokstaver.

Lister har også metoder knyttet til seg. En komplett oversikt finnes på referansesiden https://www.w3schools.com/python/python_ref_list.asp. Kommandoen dir(list) i Python vil også gi en oversikt.

Noen viktige metoder er:

append()

Legger til et element på slutten av ei liste. Som argument angir vi elementet vi vil legge til.

Eksempel 1:

Vi har lista demo, som vist under:

demo
7 -3 8 4 8

Så skriver vi 

demo.append(5)

Da blir et element med tallet 5 lagt til på slutten, og demo ser slik ut:

demo
7 -3 8 4 8 5

insert()

Setter inn et element foran et element med en gitt indeks. Som argumenter gir vi først indeksen, så elementet.

Eksempel 2:

Vi har lista demo, som vist under:

demo
7 -3 8 4 8

Så skriver vi 

demo.insert(2, 5)

Siden indekseringen starter på 0, er det tallet 8 som har indeks 2. Når vi setter inn 5, skyves 8, 4 og 8 mot høyre, og demo ser slik ut:

demo
7 -3 5 8 4 8

pop()

Fjerner et element med en gitt indeks i ei liste. Som argument gir vi indeksen.

Eksempel 3:

Vi har lista demo, som vist under:

demo
7 -3 8 4 8

Så skriver vi 

demo.pop(1)

Siden indekseringen starter på 0, er det −3 som har indeks 1 og skal fjernes, og demo ser slik ut:

demo
7 8 4 8

Metoden pop() returnerer elementet den fjerner fra lista. Det kan vi tilordne til en variabel.

Eksempel 4:

Vi har lista demo, som vist under:

demo
7 -3 8 4 8

Så skriver vi 

x = demo.pop(1)

Da blir tallet −3 fjernet fra lista og tilordnet variabelen x.

Skriver vi så

print(x)

får vi skrevet ut -3.

Dersom vi ikke gir noe argument til pop(), fjernes siste element i lista.

Eksempel 5:

Vi har lista demo, som vist under:

demo
7 -3 8 4 8

Så skriver vi 

demo.pop()

Det betyr at siste element, som er 8, skal fjernes, og demo ser slik ut:

demo
7 -3 8 4

remove()

Fjerner første forekomst av en gitt verdi i ei liste. Som argument gir vi verdien vi skal fjerne. Argumentet til remove() henviser altså til innholdet i et element, ikke indeksen til et element, slik insert() og pop() gjør.

Eksempel 6:

Vi har lista demo, som vist under:

demo
7 -3 8 4 8

Så skriver vi 

demo.remove(8)

Det betyr at første forekomst av 8 skal fjernes, og demo ser slik ut:

demo
7 -3 4 8

Skriver vi så

demo.remove(8)

på nytt, fjernes neste forekomst av 8, og demo ser slik ut:

demo
7 -3 4
 

Dersom vi angir en verdi som ikke finnes i lista, får vi en feilmelding.

extend()

Utvider ei liste med ei ny liste på slutten. Som argument gir vi den nye lista.

Eksempel 7:

Vi har lista demo, som vist under:

demo
7 -3 8 4 8

Så skriver vi 

demo.extend([2, 3, 6])

Da utvides demo med lista [2, 3, 6] på slutten, og ser slik ut:

demo
7 -3 8 4 8 2 3 6

Alternativt kan vi bruke operatoren +=.

Å skrive

demo += [2, 3, 6]

gir samme liste som

demo.extend([2, 3, 6])

index()

Returnerer indeksen til første forekomst av en verdi i ei liste. Som argument gir vi verdien vi skal finne.

Eksempel 8:

Vi har lista demo, som vist under:

demo
7 -3 8 4 8

Så skriver vi 

print(demo.index(8))

Da får vi skrevet ut 2 fordi første forekomst av 8 har indeks 2.

Dersom vi angir en verdi som ikke finnes i lista, får vi en feilmelding.

Oppgave 1:

Vi skal arbeide på lista demo, som ser slik ut:

demo
7 -3 8 4 8
 

Skriv kode som oppretter denne lista og deretter

        • Legger til 9 på slutten.
        • Setter inn −4 foran elementet med indeks 3.
        • Fjerner og skriver ut elementet med indeks 1.
        • Fjerner elementet med verdi 4.
        • Utvider lista med lista [6, 3, 5].

Skriv ut lista etter hver operasjon for å kontrollere at resultatet blir riktig.

Se løsningsforslag

clear()

Tømmer ei liste, det vil si at alle elementene fjernes.

Kilder

    • Matthes A. (2019). Python Crash Course. no starch press