Prüfen, ob Eingabe Integer ist in Python

Manav Narula 30 Januar 2023
  1. Verwenden Sie die Funktion int(), um zu überprüfen, ob die Eingabe in Python eine Ganzzahl ist
  2. Verwenden Sie die Methode isnumeric(), um zu überprüfen, ob die Eingabe eine Ganzzahl ist oder nicht
  3. Verwenden Sie die regulären Ausdrücke, um zu überprüfen, ob die Eingabe eine Ganzzahl in Python ist
Prüfen, ob Eingabe Integer ist in Python

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 Narula avatar Manav Narula avatar

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.

LinkedIn

Verwandter Artikel - Python String

Verwandter Artikel - Python Input