Python3 isdigit()-Methode
Beschreibung
Die Python-Methode isdigit() prüft, ob eine Zeichenkette nur aus Ziffern besteht.
Syntax
Syntax der isdigit()-Methode:
str.isdigit()
Parameters
- Keine.
Rückgabewert
Gibt True zurück, wenn die Zeichenkette nur Ziffern enthält, andernfalls wird False zurückgegeben.
Beispiel
Das folgende Beispiel demonstriert die Methode isdigit():
Beispiel
#!/usr/bin/python3
str = "123456";
print (str.isdigit())
str = "Example example....wow!!!"
print (str.isdigit())
str = "123456";
print (str.isdigit())
str = "Example example....wow!!!"
print (str.isdigit())
Die Ausgabe des obigen Beispiels ist wie folgt:
True False
Die isdigit()-Methode ist nur für positive ganze Zahlen gültig; bei negativen Zahlen und Dezimalzahlen liefert sie falsche Ergebnisse.
Du kannst die folgende Funktion verwenden, um dies zu lösen:
Beispiel
# Ermitteln, ob es sich um eine Zahl handelt
def is_number(s):
try: # Wenn die Anweisung float(s) ausgeführt werden kann, True zurückgeben (Zeichenkette s ist ein float)
float(s)
return True
except ValueError: # ValueError ist eine Standard-Python-Ausnahme und bedeutet „ungültiges Argument übergeben“
pass # Wenn eine ValueError-Ausnahme ausgelöst wird, nichts tun (pass: nichts tun, wird normalerweise als Platzhalteranweisung verwendet)
try:
import unicodedata # Paket zur Verarbeitung von ASCII-Codes
unicodedata.numeric(s) # Eine Funktion, die eine Zeichenkette, die eine Zahl darstellt, in einen float umwandelt und diesen zurückgibt
return True
except (TypeError, ValueError):
pass
return False
print(is_number(1))
print(is_number(1.0))
print(is_number(0))
print(is_number(-2))
print(is_number(-2.0))
print(is_number("abc"))
Das Ausgabeergebnis ist:
True True True True True False
Andere Erweiterungen
Python3 Zeichenketten