In het leerpad heb je al een aantal ingebouwde functies gezien die je kan toepassen op een string. Neem als voorbeeld de string "Python".

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.

Nogmaals benadrukken dat de oorspronkelijke string niet verandert. Zo toont het onderstaande programma achtereenvolgens "PYTHON" en "Python".

tekst = "Python"
print(tekst.upper())
print(tekst)

Overzicht

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:

Meestal 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")