Verwijder alleen de randen
Bewaar raw.strip() in cleaned. Toon op regel 1 PyTHon, zonder spaties ervoor of erachter.
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 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.
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.
raw = " Dag Club! "
cleaned = raw.strip()
print(cleaned)
print(cleaned.lower())
print(cleaned.replace("Club", "Team"))
print(len(raw), len(cleaned))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.
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.
raw = " Dag Club! "
raw.strip()
print(f"[{raw}]")[ 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.
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.
Bewaar raw.strip() in cleaned. Toon op regel 1 PyTHon, zonder spaties ervoor of erachter.
Toon op regel 2 de kleine-letterversie van cleaned: python.
Vervang in sentence alleen Go door Python. Toon op regel 3 Python doet mee.
Toon op regel 4 eerst len(raw) en daarna len(cleaned): 10 6.
strip() verwijdert witruimte aan de randen.lower() en replace() leveren bewerkte tekst op.Hierna combineer je de bouwstenen van deze module in een klein tijdsoverzicht.
Voer je code uit en ontdek
wat je hebt gemaakt.
Je hoeft het niet in één keer goed te doen. Na het uitvoeren zie je hier welke stappen al kloppen.