← Python/De eerste bouwstenen
Les 7 van 8
MODULE 01 · 07◷ 14 min

Ruim tekst stap voor stap op

Na deze les kun je
  • Spaties aan de randen van tekst verwijderen
  • Een tekstwaarde omzetten naar kleine letters
  • Een deel van tekst vervangen en lengtes vergelijken

Iemand typt een naam met een spatie ervoor, een ander gebruikt alleen hoofdletters. Voor een net overzicht wil je zulke invoer eerst opschonen. Python kan gerichte tekstbewerkingen uitvoeren, zodat je niet zelf ieder teken opnieuw hoeft te schrijven.

Een bewerking op tekst

Een methode is een bewerking die je via een waarde aanroept. Bij raw.strip() staat vóór de punt de tekst waarmee je werkt, en erachter de methode. De ronde haakjes zorgen dat de bewerking wordt uitgevoerd.

De methode strip() verwijdert witruimte, zoals spaties en regeleinden, aan het begin en einde van tekst. Spaties midden in een zin blijven staan. Dat is handig voor invoer: je verwijdert de onbedoelde randen zonder alle woorden tegen elkaar te plakken.

Met lower() krijg je een versie met kleine letters. Met replace(old, new) vervang je alle exacte voorkomens van de eerste tekst door de tweede tekst. Die twee meegegeven waarden heten argumenten; hun volgorde bepaalt wat wordt gezocht en wat ervoor terugkomt.

Hoofdletters tellen bij replace() mee. Zo vindt zoeken naar "Dag" niet automatisch de tekst "DAG". Kies dus bewust of je eerst de lettervorm wilt veranderen of juist één exacte schrijfwijze wilt vervangen.

Bewaar iedere uitkomst die je nodig hebt

Strings zijn onveranderlijk: deze methoden passen de oorspronkelijke tekst niet aan, maar leveren een tekstwaarde als resultaat. Geef dat resultaat een naam als je het wilt bewaren. Anders heb je de bewerking wel uitgevoerd, maar gebruik je de uitkomst niet.

Een label voor een wandelclub
raw = "  Dag Club!  "
cleaned = raw.strip()
print(cleaned)
print(cleaned.lower())
print(cleaned.replace("Club", "Team"))
print(len(raw), len(cleaned))
Verwachte uitvoer
Dag Club!
dag club!
Dag Team!
13 9

De opgeschoonde tekst heeft nog steeds een spatie tussen de woorden. De tweede uitvoerregel toont het resultaat van lower(), maar cleaned blijft Dag Club!. De volgende regel vervangt daarom Club met een hoofdletter en laat de rest staan.

Met de functie len() tel je hier de tekens, inclusief de spaties. De oorspronkelijke tekst heeft er dertien; na het verwijderen van vier randspaties blijven er negen over. In deze eenvoudige tekst komt ieder zichtbaar teken overeen met één geteld teken; bij sommige samengestelde tekens, zoals emoji, is dat niet altijd zo.

Let ook op de schrijfwijze: len(raw) is een losse functie met de tekst als argument. raw.strip() is een methode via de tekst zelf. Je hoeft nog niet zelf functies of methoden te maken om ze te gebruiken.

De uitkomst vergeten

Een veelgemaakte fout is om de methode aan te roepen en daarna opnieuw de oorspronkelijke invoer af te drukken. De vierkante haken in dit voorbeeld maken de randspaties zichtbaar.

Waar is de opgeschoonde tekst gebleven?
raw = "  Dag Club!  "
raw.strip()
print(f"[{raw}]")
Verwachte uitvoer
[  Dag Club!  ]

De spaties staan er nog, omdat raw dezelfde waarde houdt. Bewaar de uitkomst bijvoorbeeld in cleaned = raw.strip() en gebruik daarna cleaned. De oorspronkelijke tekst is dan nog beschikbaar om te vergelijken.

Nu jij

Ruim een taalnaam op, maak er kleine letters van en vervang een taalnaam in een zin. Controleer daarna de lengtes om te zien dat alleen je nieuwe waarde is opgeschoond.

AAN DE SLAG 0/4
1

Verwijder alleen de randen

Bewaar raw.strip() in cleaned. Toon op regel 1 PyTHon, zonder spaties ervoor of erachter.

2

Maak een uniform label

Toon op regel 2 de kleine-letterversie van cleaned: python.

3

Vervang gericht

Vervang in sentence alleen Go door Python. Toon op regel 3 Python doet mee.

4

Bewijs dat de invoer behouden blijft

Toon op regel 4 eerst len(raw) en daarna len(cleaned): 10 6.

Dit neem je mee

  • strip() verwijdert witruimte aan de randen.
  • lower() en replace() leveren bewerkte tekst op.
  • Bewaar de uitkomst; de oorspronkelijke string verandert niet.

Hierna combineer je de bouwstenen van deze module in een klein tijdsoverzicht.

main.py
UitvoerPython
›
›_

Hier komt je resultaat.

Voer je code uit en ontdek
wat je hebt gemaakt.

0/4 stappen
EVEN MEEKIJKEN

Bekijk hoe het kan.

Je mag de oplossing bekijken. Deze poging telt dan niet mee als afgeronde les. Met Reset kun je daarna opnieuw zelf oefenen.