Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Indexering och Skivning | Strängar
Quizzes & Challenges
Quizzes
Challenges
/
Datatyper i Python

bookIndexering och Skivning

Strängar är sekvenser: varje tecken har en position (ett index). Python använder nollbaserad indexering, så det första tecknet har index 0. Enskilda tecken kan hämtas med indexering och teckenintervall med slicing.

Indexering

Använd hakparenteser med en enskild position.

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

Negativa index räknas från slutet.

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

Indexering måste träffa en befintlig position, annars uppstår IndexError.

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

Strängar är också oföränderliga, så det går att läsa s[i] men inte tilldela ett värde till det.

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

Slicing

En slice använder start:stop:step och returnerar en ny sträng. stop är exklusiv (den inkluderas inte).

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

Slices är toleranta: om du går utanför gränserna justeras det automatiskt till giltiga värden (ingen felaktighet uppstår).

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

Negativa index och omvändning

Negativa index kan kombineras i skivor, och ett negativt step går baklänges.

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

step kan inte vara 0. Om step utelämnas antas värdet vara 1. Om start eller stop utelämnas betyder det "från början" / "till slutet".

1. Vilket värde kommer denna kod att skriva ut?

2. Vilket värde kommer denna kod att skriva ut?

3. Vilket påstående ger ett felmeddelande för u = "hello"?

question mark

Vilket värde kommer denna kod att skriva ut?

Select the correct answer

question mark

Vilket värde kommer denna kod att skriva ut?

Select the correct answer

question mark

Vilket påstående ger ett felmeddelande för u = "hello"?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 2

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

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?

bookIndexering och Skivning

Svep för att visa menyn

Strängar är sekvenser: varje tecken har en position (ett index). Python använder nollbaserad indexering, så det första tecknet har index 0. Enskilda tecken kan hämtas med indexering och teckenintervall med slicing.

Indexering

Använd hakparenteser med en enskild position.

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

Negativa index räknas från slutet.

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

Indexering måste träffa en befintlig position, annars uppstår IndexError.

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

Strängar är också oföränderliga, så det går att läsa s[i] men inte tilldela ett värde till det.

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

Slicing

En slice använder start:stop:step och returnerar en ny sträng. stop är exklusiv (den inkluderas inte).

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

Slices är toleranta: om du går utanför gränserna justeras det automatiskt till giltiga värden (ingen felaktighet uppstår).

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

Negativa index och omvändning

Negativa index kan kombineras i skivor, och ett negativt step går baklänges.

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

step kan inte vara 0. Om step utelämnas antas värdet vara 1. Om start eller stop utelämnas betyder det "från början" / "till slutet".

1. Vilket värde kommer denna kod att skriva ut?

2. Vilket värde kommer denna kod att skriva ut?

3. Vilket påstående ger ett felmeddelande för u = "hello"?

question mark

Vilket värde kommer denna kod att skriva ut?

Select the correct answer

question mark

Vilket värde kommer denna kod att skriva ut?

Select the correct answer

question mark

Vilket påstående ger ett felmeddelande för u = "hello"?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 3. Kapitel 2
some-alt