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:
| Teken | g | a | r | d | e | n |
|---|---|---|---|---|---|---|
| Index | 0 | 1 | 2 | 3 | 4 | 5 |
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_charactermoet het eerste teken bevatten;last_charactermoet 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