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