0%

Werken met tekst · oefening

Zoek tekens op positie

Doordat een string geordend is, kan Python een teken op een bepaalde positie ophalen.

word = "garden"
first_character = word[0]
print(first_character)

De vierkante haken vragen om de waarde op een index. De uitvoer is g.

Python begint te tellen bij nul

De tekens in "garden" hebben deze indexen:

Tekengarden
Index012345

Het eerste teken staat op index 0, niet op index 1. Dit heet indexeren vanaf nul.

print(word[0])
print(word[1])
print(word[5])

Dit drukt g, a en n af.

De index is een geheel getal. word["1"] werkt niet, omdat de string "1" geen indexgetal is.

Tel terug met negatieve indexen

Python laat je ook vanaf het einde tellen:

print(word[-1])
print(word[-2])

Index -1 betekent het laatste teken. Index -2 betekent het teken daarvoor. De uitvoer is n en e.

Negatief indexeren is vooral handig als je de lengte van de string niet vooraf weet.

Een index moet bestaan

"garden" heeft zes tekens, met indexen van 0 tot en met 5. Als je om word[6] vraagt, verschijnt:

IndexError: string index out of range

Python begreep de indexbewerking, maar die positie bestaat niet.

Een lege string heeft geen eerste of laatste teken. Daarom vraagt het hoofdstukproject expliciet om tekst die niet leeg is.

Wat drukt dit programma af?

word = "code"
print(word[1])

Zoek het begin en einde van een woord

Vervang de twee lege strings door tekens die je met een index uit language haalt:

  • first_character moet het eerste teken bevatten;

  • last_character moet het laatste teken bevatten.

Gebruik index 0 voor het eerste teken en een negatieve index voor het laatste. De uitvoer moet zijn:

First: P
Last: n

Opdracht

Gebruik index 0 om het eerste teken van language toe te wijzen aan first_character. Gebruik index -1 om het laatste teken toe te wijzen aan last_character.

Zorg voor deze uitvoer:

First: P
Last: n