Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Indeksering og Slicing | Strenger
Datatyper i Python

bookIndeksering og Slicing

Strenger er sekvenser: hvert tegn har en posisjon (en indeks). Python bruker nullindeksering, så det første tegnet er på indeks 0. Du kan hente ut enkelttegn med indeksering og intervaller av tegn med slicing.

Indeksering

Bruk hakeparenteser med én posisjon.

123
s = "python" print(s[0]) # 'p' (first character) print(s[5]) # 'n' (sixth character)
copy

Negative indekser teller fra slutten.

123
s = "python" print(s[-1]) # 'n' (last character) print(s[-2]) # 'o' (second from the end)
copy

Indeksering må treffe en eksisterende posisjon, ellers får du IndexError.

12
s = "python" print(s[10]) # IndexError: string index out of range
copy

Strenger er også immutable, så du kan lese s[i], men ikke tilordne til det.

12
s = "python" s[0] = 'P' # TypeError: 'str' object does not support item assignment
copy

Slicing

Et utsnitt bruker start:stop:step og returnerer en ny streng. stop er eksklusiv (den er ikke inkludert).

12345
s = "python" print(s[1:4]) # 'yth' (indices 1,2,3) print(s[:4]) # 'pyth' (start defaults to 0) print(s[3:]) # 'hon' (stop defaults to len(s)) print(s[::2]) # 'pto' (every 2nd character)
copy

Utsnitt er tolerante: å gå utenfor grensene bare beskjærer til gyldige verdier (ingen feil).

12
s = "python" print(s[0:100]) # 'python'
copy

Negative indekser og reversering

Det er mulig å bruke negative indekser i slices, og et negativt step går bakover.

123
s = "python" print(s[-3:]) # 'hon' (last three) print(s[::-1]) # 'nohtyp' (reverse)
copy
Note
Merk

step kan ikke være 0. Hvis step utelates, betyr det 1. Hvis start eller stop utelates, betyr det "fra begynnelsen" / "til slutten".

1. Hvilken verdi vil denne koden skrive ut?

2. Hvilken verdi vil denne koden skrive ut?

3. Hvilken setning gir en feil for u = "hello"?

question mark

Hvilken verdi vil denne koden skrive ut?

Select the correct answer

question mark

Hvilken verdi vil denne koden skrive ut?

Select the correct answer

question mark

Hvilken setning gir en feil for u = "hello"?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 2

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

Can you explain more about how slicing works with different step values?

What happens if I use both negative start and stop indices in a slice?

Can you show more examples of string indexing and slicing?

Awesome!

Completion rate improved to 5.26

bookIndeksering og Slicing

Sveip for å vise menyen

Strenger er sekvenser: hvert tegn har en posisjon (en indeks). Python bruker nullindeksering, så det første tegnet er på indeks 0. Du kan hente ut enkelttegn med indeksering og intervaller av tegn med slicing.

Indeksering

Bruk hakeparenteser med én posisjon.

123
s = "python" print(s[0]) # 'p' (first character) print(s[5]) # 'n' (sixth character)
copy

Negative indekser teller fra slutten.

123
s = "python" print(s[-1]) # 'n' (last character) print(s[-2]) # 'o' (second from the end)
copy

Indeksering må treffe en eksisterende posisjon, ellers får du IndexError.

12
s = "python" print(s[10]) # IndexError: string index out of range
copy

Strenger er også immutable, så du kan lese s[i], men ikke tilordne til det.

12
s = "python" s[0] = 'P' # TypeError: 'str' object does not support item assignment
copy

Slicing

Et utsnitt bruker start:stop:step og returnerer en ny streng. stop er eksklusiv (den er ikke inkludert).

12345
s = "python" print(s[1:4]) # 'yth' (indices 1,2,3) print(s[:4]) # 'pyth' (start defaults to 0) print(s[3:]) # 'hon' (stop defaults to len(s)) print(s[::2]) # 'pto' (every 2nd character)
copy

Utsnitt er tolerante: å gå utenfor grensene bare beskjærer til gyldige verdier (ingen feil).

12
s = "python" print(s[0:100]) # 'python'
copy

Negative indekser og reversering

Det er mulig å bruke negative indekser i slices, og et negativt step går bakover.

123
s = "python" print(s[-3:]) # 'hon' (last three) print(s[::-1]) # 'nohtyp' (reverse)
copy
Note
Merk

step kan ikke være 0. Hvis step utelates, betyr det 1. Hvis start eller stop utelates, betyr det "fra begynnelsen" / "til slutten".

1. Hvilken verdi vil denne koden skrive ut?

2. Hvilken verdi vil denne koden skrive ut?

3. Hvilken setning gir en feil for u = "hello"?

question mark

Hvilken verdi vil denne koden skrive ut?

Select the correct answer

question mark

Hvilken verdi vil denne koden skrive ut?

Select the correct answer

question mark

Hvilken setning gir en feil for u = "hello"?

Select the correct answer

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 2
some-alt