Prüfen, ob Eingabe Integer ist in Python
-
Verwenden Sie die Funktion
int()
, um zu überprüfen, ob die Eingabe in Python eine Ganzzahl ist -
Verwenden Sie die Methode
isnumeric()
, um zu überprüfen, ob die Eingabe eine Ganzzahl ist oder nicht - Verwenden Sie die regulären Ausdrücke, um zu überprüfen, ob die Eingabe eine Ganzzahl in Python ist
In der Welt der Programmierung arbeiten wir sehr häufig mit den Eingaben des Benutzers. Python verfügt über die Funktion input()
, mit der der Benutzer die gewünschte Eingabe eingeben kann. Manchmal möchten wir vielleicht die Eingabe eines bestimmten Typs.
Diese Funktion konvertiert jedoch die Benutzereingaben in eine Zeichenkette, bevor sie mit dem Programm kompiliert werden. Daher ist es nicht einfach, die herkömmlichen Methoden zu verwenden, um mit der Benutzereingabe nach bestimmten Typen zu suchen, und wir müssen prüfen, ob die Zeichenkette im Wesentlichen Zahlen enthält oder nicht.
In diesem Tutorial wird erläutert, wie Sie überprüfen können, ob die vom Benutzer eingegebene Eingabe ein ganzzahliger Typ ist oder nicht.
Verwenden Sie die Funktion int()
, um zu überprüfen, ob die Eingabe in Python eine Ganzzahl ist
Die Funktion int()
kann einen bestimmten String-Integer-Wert in einen Integer-Typ konvertieren. Es wird ein Fehler ausgelöst, wenn der gewünschte Wert keine Ganzzahl ist und nicht konvertiert werden kann. Mit dieser Methode können wir überprüfen, ob die Zeichenkette des Benutzers eine Ganzzahl ist oder nicht, wie unten gezeigt.
user_input = input("Enter the input ")
try:
int(user_input)
it_is = True
except ValueError:
it_is = False
print(it_is)
Ausgabe:
Enter the input 15
True
Beachten Sie die Verwendung des Blocks try...except
in dieser Methode. Es wird sehr häufig verwendet, wenn Ausnahmen in Python behandelt werden.
Verwenden Sie die Methode isnumeric()
, um zu überprüfen, ob die Eingabe eine Ganzzahl ist oder nicht
Die Methode isnumeric()
der Zeichenkette gibt True
zurück, wenn die Zeichenkette nur Zahlen enthält. Es ist jedoch anzumerken, dass dies bei negativen Werten fehlschlägt. Dies liegt daran, dass automatisch False
zurückgegeben wird, wenn das Vorzeichen -
in negativen Ganzzahlen auftritt.
Der folgende Code zeigt, wie wir mit dieser Funktion überprüfen können, ob eine Zeichenkette in Python Ganzzahlen enthält.
user_input = input("Enter the input ")
print(user_input.isnumeric())
Ausgabe:
Enter the input 10
True
Wir können auch die Funktion isdigit()
anstelle von isnumeric()
verwenden. Es hat auch die gleichen Einschränkungen wie diese Methode.
Verwenden Sie die regulären Ausdrücke, um zu überprüfen, ob die Eingabe eine Ganzzahl in Python ist
Wir können auch die regulären Ausdrücke verwenden, um ein Muster zu erstellen, das True
zurückgibt, wenn es auf Ganzzahlen in einer Zeichenkette stößt. Wir können das Muster auch ändern, um sicherzustellen, dass es für negative Werte funktioniert. Zum Beispiel,
import re
user_input = input("Enter the input ")
num_format = re.compile(r"^\-?[1-9][0-9]*$")
it_is = re.match(num_format, user_input)
if it_is:
print("True")
else:
print("False")
Ausgabe:
Enter the input -15
True
Nachfolgend finden Sie die Erklärung des Musters für reguläre Ausdrücke - ^\-?[1-9][0-9]*$
.
^
ist der Anfang der Zeichenkette\-?
zeigt an, dass diese Zahl negativ oder positiv sein kann.[1-9]
ist die erste Ziffer der Nummer. Es muss eine Zahl zwischen 1 und 9 sein, aber nicht 0.[0-9]*
gibt die folgenden Ziffern an. Die Anzahl der Ziffern kann beliebig sein, einschließlich 0.$
ist das Ende der Zeichenkette.
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInVerwandter Artikel - Python String
- Entfernen Kommas aus String in Python
- Wie man prüft, ob eine Zeichenkette auf pythonische Weise leer ist
- Konvertieren einer Zeichenkette in einen Variablennamen in Python
- Wie man Leerzeichen in einem String in Python entfernt
- Wie man in Python Zahlen aus einer Zeichenkette extrahiert
- Wie man in Python String in datetime konvertiert