Python - Input Validation
Ich bin auf der Suche zum erstellen von code, der benötigt eine ganze Zahl größer als 2 zu sein, die Eingaben von einem Benutzer, bevor Sie fortfahren. Ich bin mit python 3.3. Hier ist, was ich habe, so weit:
def is_integer(x):
try:
int(x)
return False
except ValueError:
print('Please enter an integer above 2')
return True
maximum_number_input = input("Maximum Number: ")
while is_integer(maximum_number_input):
maximum_number_input = input("Maximum Number: ")
print('You have successfully entered a valid number')
Was ich nicht sicher bin, ist, wie am besten, um in den Zustand zu versetzen, dass die Ganzzahl muss größer als 2 sein. Ich habe gerade erst angefangen zu lernen python, aber wollen, um in gute Gewohnheiten.
int(x)
gelingen kann, für beide ganzzahlige und nicht ganzzahlige Werte. Auch so, Ihre Funktion sollte wirklich genannt werden is_not_integer
definiert.
InformationsquelleAutor nathangrand | 2013-10-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dieser sollte den job tun:
Oder noch kürzer:
x
ist nicht notwendigerweise eine ganze Zahl, wennint(x)
nicht eine Fehlermeldung ausgeben.Sind Sie falsch.
int('3.0')
UrsachenValueError
.True, wenn die Funktion nimmt immer einen string. Zeit, um einige änderungen an undownvote...
Es ist, wie lange wir verwenden Python 3 🙂
Ja, ich war einfach nur auf der Suche auf der Validierungs-Funktion out-of-Kontext, denken, es könnte ein beliebiger Wert sein, nicht nur die Zeichenfolge, die der Benutzer eingegeben werden können.
InformationsquelleAutor Roman Bodnarchuk
Mein nehmen:
InformationsquelleAutor Jon Clements
InformationsquelleAutor Games Brainiac
InformationsquelleAutor Burhan Khalid
Hoffe, das hilft
InformationsquelleAutor Art Knipe
Dieser überprüft, ob die Eingabe ein integer ist, aber nicht ablehnen, die Werte, die Aussehen wie Ganzzahlen (wie
3.0
):InformationsquelleAutor chepner