Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich Benutzereingaben in Python korrekt in Zahlen umwandeln?
Python-Eingabefunktion: Konvertieren von Benutzerinteraktionen in Zahlen
In Python wird die Funktion input() zum Lesen von Benutzereingaben verwendet. Die Ausgabe von input() ist jedoch eine Zeichenfolge und nicht die beabsichtigte Zahl, was bei der Ausführung arithmetischer Operationen zu unerwarteten Ergebnissen führt. Um eine genaue Datenverarbeitung sicherzustellen, ist es wichtig zu verstehen, warum dies geschieht.
Ursache für String-Eingaben
Seit Python 3 gibt input() einen String anstelle einer Ganzzahl zurück. Dies liegt daran, dass die Eingabefunktion die Antwort des Benutzers wörtlich liest, ohne eine Auswertung oder Typkonvertierung durchzuführen.
Lösung: Explizite Typkonvertierung
Um die Eingabe in eine Ganzzahl zu konvertieren, Es ist notwendig, es explizit mit der Funktion int() zu konvertieren. Dadurch wird sichergestellt, dass die resultierende Variable den richtigen Datentyp hat. Der folgende Code demonstriert den richtigen Ansatz:
x = int(input("Enter a number: ")) y = int(input("Enter a number: "))
Dieser modifizierte Code liest Benutzereingaben als Zeichenfolgen und wandelt sie dann in Ganzzahlen um, bevor arithmetische Operationen ausgeführt werden, wodurch das im ursprünglichen Codeausschnitt aufgetretene Problem behoben wird.
Basiskonvertierungen und Gleitkommazahlen
Darüber hinaus ermöglicht Ihnen Python dies Geben Sie die Basis der Eingabezahl an, wenn Sie int() verwenden. Dies ermöglicht die Annahme von Zahlen in unterschiedlichen Basen, beispielsweise binär, oktal oder hexadezimal.
data = int(input("Enter a number: "), 8) # Reads an octal number
Ähnlich kann für Werte mit gebrochenen Komponenten float() zur expliziten Konvertierung verwendet werden.
x = float(input("Enter a number: "))
Unterschiede zwischen Python 2 und Python 3
Python 2 behandelte Benutzereingaben anders als Python 3. In Python 2 wertete die Funktion input() Benutzereingaben aus und konvertierte sie automatisch in eine Ganzzahl. In Python 3 wurde diese automatische Konvertierung jedoch entfernt und erforderte eine explizite Typkonvertierung mit int().
Fazit
Durch das Verständnis der Unterschiede zwischen Python 2 und Python 3 Durch die Anwendung einer expliziten Typkonvertierung können Entwickler eine genaue Zahlenverarbeitung für Benutzereingaben sicherstellen, was zu robustem und zuverlässigem Python-Code führt.
Das obige ist der detaillierte Inhalt vonWie kann ich Benutzereingaben in Python korrekt in Zahlen umwandeln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!