PythonPodcast 6 - itnett/FTD02H-N GitHub Wiki

Episode 6 – Lister og Tupler: Hvordan Organisere og Strukturere Data i Python

Velkommen til den sjette episoden av vår Python-podcast for nybegynnere! Denne episoden tar vi et dypdykk inn i lister og tupler i Python. Lister og tupler er essensielle datatyper som lar oss lagre flere verdier i én variabel og behandle dem effektivt. Men før vi starter, skal vi, som alltid, oppsummere det vi har lært til nå.

Oppsummering av tidligere episoder:

  1. Episode 1-3: Vi har sett på grunnleggende Python-syntaks, variabler, betingelser som if og else, sammenligningsoperatorer, og hvordan vi bruker input() og print().

  2. Episode 4: Vi jobbet med løkker som while og for for å iterere over verdier.

  3. Episode 5: Vi lærte hvordan vi kan bruke funksjoner til å gjøre koden vår mer modulær og effektiv, og vi gikk gjennom argumenter, return-verdier og feilhåndtering.

Hva er lister og tupler?

Både lister og tupler lar oss lagre flere elementer under én variabel, men de har noen viktige forskjeller. I denne episoden skal vi lære hva de er, hvordan vi bruker dem, og hvilke situasjoner det er best å bruke den ene fremfor den andre.

Hva er en liste?

En liste i Python er en samling av elementer som kan endres (mutable). Dette betyr at du kan legge til, fjerne og endre elementer i en liste etter at den er opprettet.

Eksempel på en liste:

En enkel liste

frukt = ['eple', 'banan', 'appelsin']

Les opp koden:

Linje 1: Vi lager en variabel frukt, som inneholder tre elementer: eple, banan, og appelsin.

Elementene i listen er skrevet mellom firkantede parenteser [ ], og hvert element er separert av komma ,.

Hvordan bruke lister:

For å hente ut verdier fra en liste, kan vi bruke indekser. Python bruker null-baserte indekser, som betyr at det første elementet har indeksen 0.

Hent første element

print(frukt[0]) # Utskrift: eple

Hent siste element

print(frukt[-1]) # Utskrift: appelsin

Les opp koden:

Linje 1: Vi bruker firkantede parenteser til å hente ut det første elementet fra listen, som er på indeks 0.

Linje 4: Vi kan også bruke negative indekser. -1 representerer det siste elementet i listen.

Endre elementer i en liste

Lister er muterbare, som betyr at vi kan endre verdiene i dem etter at de er opprettet.

Endre det andre elementet i listen

frukt[1] = 'pære' print(frukt) # Utskrift: ['eple', 'pære', 'appelsin']

Her har vi erstattet banan med pære.

Funksjoner for lister

Python har flere innebygde funksjoner for å jobbe med lister. Noen av de viktigste funksjonene er:

append(): Legger til et element på slutten av listen.

remove(): Fjerner et spesifikt element fra listen.

pop(): Fjerner det siste elementet i listen og returnerer det.

Eksempler:

Legge til et nytt element

frukt.append('druer') print(frukt) # Utskrift: ['eple', 'pære', 'appelsin', 'druer']

Fjerne et element

frukt.remove('pære') print(frukt) # Utskrift: ['eple', 'appelsin', 'druer']

Fjerne det siste elementet og returnere det

siste_frukt = frukt.pop() print(siste_frukt) # Utskrift: druer print(frukt) # Utskrift: ['eple', 'appelsin']

Tupler

En tuple er lik en liste, men den er uforanderlig (immutable). Dette betyr at når du har opprettet en tuple, kan du ikke endre, legge til eller fjerne elementer fra den.

Eksempel på en tuple:

En enkel tuple

frukt_tuple = ('eple', 'banan', 'appelsin')

Les opp koden:

Linje 1: Her har vi opprettet en tuple kalt frukt_tuple, som inneholder tre elementer.

Tupler bruker parenteser ( ) i stedet for firkantede parenteser.

Hvorfor bruke tupler?

Selv om tupler ikke kan endres, har de sine fordeler:

Raskere enn lister for visse operasjoner.

Sikrere fordi innholdet ikke kan endres ved en feiltakelse.

Brukes ofte når du vil at dataene skal være konstant.

Eksempel på bruk av tuple:

koordinater = (10.0, 20.0) print(f"X: {koordinater[0]}, Y: {koordinater[1]}") # Utskrift: X: 10.0, Y: 20.0

Viktige forskjeller mellom lister og tupler

Lister innenfor lister (Nested Lists)

Lister kan også inneholde andre lister, noe som gjør dem til et kraftig verktøy for å organisere mer komplekse data.

Eksempel:

matrise = [1, 2, 3], [4, 5, 6], 7, 8, 9 print(matrise[0][1]) # Utskrift: 2

Her har vi en liste inne i en liste, og vi kan få tilgang til elementene ved å bruke to indekser.

Bruk av løkker med lister og tupler

Vi kan bruke for-løkker for å iterere gjennom elementene i både lister og tupler.

Eksempel med liste:

for frukt in ['eple', 'banan', 'appelsin']: print(f"Jeg liker {frukt}")

Eksempel med tuple:

for frukt in ('eple', 'banan', 'appelsin'): print(f"Jeg liker {frukt}")

Begge eksemplene vil skrive ut hver frukt i samlingen.

Avansert listehåndtering: List Comprehensions

List comprehensions gir oss en elegant måte å lage nye lister på basert på eksisterende lister.

Eksempel: Lag en liste med kvadrater av tall:

kvadrater = [x**2 for x in range(5)] print(kvadrater) # Utskrift: [0, 1, 4, 9, 16]

Oppsummering av Episode 6:

Vi har sett på lister og tupler, to viktige datatyper for å organisere flere elementer i én variabel.

Vi har lært at lister kan endres, mens tupler er faste (kan ikke endres).

Vi har også sett på hvordan vi kan bruke for-løkker til å iterere over både lister og tupler, og hvordan vi kan bruke list comprehensions for å lage lister på en effektiv måte.

Oppgave til deg:

  1. Lag en liste som inneholder navnene på dine fem favorittfilmer.

  2. Bruk en for-løkke til å skrive ut hver film.

  3. Lag en tuple med de tre beste reisemålene dine og skriv ut dem på samme måte.

Fortsett å utforske lister og tupler, og bli komfortabel med å bruke dem i koden din!


Dette var episode 6, og neste gang skal vi dykke enda dypere inn i mer avanserte datastrukturer som dictionaries og sets.