In het leerpad heb je al een aantal ingebouwde functies gezien die je kan toepassen op een string. Neem als voorbeeld
de string "Python".
len("Python") → 6ord("A") → 65chr(66) → "B"Naast inbouwde functies, bestaan er ook string-methoden. Je roept ze op een andere manier op dan ingebouwde functies.
Neem als voorbeeld de methode upper(). Deze methode vraagt de waarde op van een string en verandert elke letter
in een hoofdletter. Je roept de methode op met de puntnotatie. Na de string of de naam van de variabele schrijf je een punt
gevolgd door de naam van de methode: upper(). Stel dat dat de variabele tekst de waarde "Python" heeft.
tekst.upper() → "PYTHON""Python".upper() → "PYTHON"Nogmaals benadrukken dat de oorspronkelijke string niet verandert. Zo toont het onderstaande programma achtereenvolgens
"PYTHON" en "Python".
tekst = "Python"
print(tekst.upper())
print(tekst)
Een aantal interessante string-methoden vind je in de tabel hieronder.
| Methode | Werking | Voorbeeld |
|---|---|---|
count() |
Telt het aantal voorkomens van een substring in een string. | "programmeren".count("e") → 2 |
find() |
Geeft de index van het eerste voorkomen van substring terug. | "programmeren".find("e") → 8 |
lower() |
Geeft een string in kleine letters terug. | "ProgrammereN".lower() → "programmeren" |
upper() |
Geeft een string in hoofdletters terug. | "ProgrammereN".upper() → "PROGRAMMEREN" |
islower() |
Geeft aan of de gegeven string uitsluitend uit kleine letters bestaat. | "programmeren".islower() → True |
isupper() |
Geeft aan of de gegeven string uitsluitend uit hoofdletters bestaat. | "ProgrammereN".isupper() → False |
isalpha() |
Geeft aan of de gegeven string uitsluitend uit letters bestaat. | "ProgrammereN".isalpha() → True |
isdigit() |
Geeft aan of de gegeven string uitsluitend uit cijfers bestaat. | "Pr0gramm3r3N".isdigit() → False |
replace() |
Geeft een string terug waarin een tekenreeks vervangen werd. | "programmeren".replace("e","3") → programm3r3n |
Het argument bij de methoden count() en find() kunnen uit meerder tekens bestaan:
"programmeren".find("mm") → 6"programmeren".find("Python") → -1"programmeren".count("ren") → 1Meestal zal je string-methoden gebruiken bij variabelen die een string bijhouden. Onderstaand programma vraagt een geldige code voor een cijferslot van 4 cijfers.
code = input("Geef een geldige code van een cijferslot: ")
while not (code.isdigit() and len(code) == 4):
code = input("Geef een geldige code van een cijferslot: ")
print(f"{code} is een geldige code voor een cijferslot")