String auf Bedingungen testen
Es gibt verschiedene Abfragen um zu testen, ob ein bestimmtes Kriterium für einen String vorliegt. Diese String-Methoden starten immer mit is…..
Im Folgenden die Übersicht aller Methoden des Datentyp Strings und is…:
| Methode | Beschreibung |
|---|---|
| string.isalnum() | Überprüft auf alphanumerische Zeichen (a-zA-Z0-9). Leerzeichen ist kein alphanumerisches Zeichen! |
| string.isalpha() | Überprüft auf alphabetische Zeichen (a-zA-Z). Leerzeichen ist kein alphanumerisches Zeichen! |
| string.isdecimal() | Überprüft auf Zahlen – wenn alle Zeichen Dezimalzahlen sind, wird True zurückgeliefert |
| string.isdigit() | Überprüft auf Numerische und digitale Zeichen z.B. ‚123‘ oder '3\u00B2' (was 3 hoch 2 entspricht!) |
| string.isidentifier() | Ob ein Identifier vorliegt (siehe https://docs.python.org/3.3/reference/lexical_analysis.html#identifiers) |
| string.islower() | Überprüft, ob alles in Kleinschreibung vorliegt |
| string.isnumeric() | Überprüft auf numerische Zeichen (z.B. 1/2, 3hoch2 etc.) |
| string.isprintable() | Überprüft, ob Druckbar ist |
| string.isspace() | Überprüft, ob nur Leerzeichen (u.ä.) vorhanden sind |
| string.istitle() | Überprüft, ob es sich um eine Überschrift handelt |
| string.isupper() | Überprüft, ob alles in Großschreibung vorliegt |
Im Folgenden werden zwei Methoden beispielhaft vorgestellt:
isalnum() Methode: Test auf alphanumerische Zeichen
Liegen nur alphanumerische Zeichen vor? Wenn das zutrifft, wird „True“ als Rückgabewert zurückgegeben. Alphanumerische Zeichen sind die Buchstaben („Alpha“) des Alphabets und Zahlen („numerische“) von 0 bis 9 – daher Alphanumerisch.
inhalt = "Beispieltext"
ergebnis = inhalt.isalnum()
print(ergebnis)
Ergebnis:
True
Sobald Leerzeichen vorkommen, sind nicht mehr alle Zeichen alphanumerisch und somit kommt beim folgenden Beispiel False zurück:
inhalt = "Beispieltext mit Leerzeichen"
ergebnis = inhalt.isalnum()
print(ergebnis)
False
isalpha() Methode: Test auf Buchstaben (Alphabet)
Test, ob nur Buchstaben vorliegen, sprich das Alphabet verwendet wird. Zahlen und Leerzeichen führen zu einem „False“, da diese nicht dazu gehören!
inhalt = "Beispieltext"
ergebnis = inhalt.isalpha()
print(ergebnis)
Ergebnis:
True
Und hier mit Zahl und somit trifft es nicht zu:
inhalt = "123Beispieltext"
ergebnis = inhalt.isalpha()
print(ergebnis)
False