Python3 input()-Funktion
Python3 integrierte Funktionen
input()Die Funktion ruft Benutzereingaben von der Standardeingabe (Tastatur) ab und gibt einen Wert vom TypString (str) zurück。
Hinweis:
input()Unabhängig davon, was eingegeben wird, ist der Rückgabewert immer ein String. Wenn numerische Berechnungen erforderlich sind, müssen Sie manuell eine Typkonvertierung durchführen (z. B.,int()、float())。
Funktionssyntax
input([prompt])
Parameterbeschreibung:
- prompt:Optional, die Meldung, die den Benutzer zur Eingabe auffordert
Beispiel
input()Benutzereingabe abrufen und als String zurückgeben.
input() Grundlegende Verwendung
Auch wenn eine Zahl eingegeben wird, ist der Rückgabewert weiterhin ein String.
Typ-Probleme (Häufige Fallstricke)
Hinweis:Direkt mit input() erhaltene Werte können nicht in numerischen Berechnungen verwendet werden.
Falsches Beispiel:
>>> a = input("请输入数字:")
>>> print(a + 1)
TypeError: can only concatenate str (not "int") to str
Korrekte Vorgehensweise:
>>> a = int(input("请输入数字:"))
>>> print(a + 1)
Mehrere Werte mit input() empfangen
split()Teilt die Eingabe anhand von Leerzeichen in ein Array aus Zeichenketten auf.
Beispiel
a, b, c = input("Bitte geben Sie drei Zahlen ein:").split()
# Typen konvertieren
a = int(a)
b = int(b)
c = int(c)
print(a, b, c)
Verwenden Siemap()kann die Typkonvertierung in einem Schritt durchführen, wodurch der Code sauberer wird.
Empfohlene Vorgehensweise (Fortgeschritten)
a, b, c = map(int, input("Bitte geben Sie drei Zahlen ein:").split())
print(a, b, c)
Übung: Berechnung der Dreiecksfläche
a, b, c = map(int, input("Bitte geben Sie die Längen der drei Seiten des Dreiecks ein:").split())
# Berechnen Sie den halben Umfang
p = (a + b + c) / 2
# Berechnen Sie die Fläche mit der Formel von Heron
s = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print("Die Fläche des Dreiecks ist:", format(s, '.2f'))
Ausführungsergebnis:
请输入三角形三边的长:3 4 5 三角形面积为: 6.00
Zusammenfassung der üblichen Verwendung
input("提示"): Eingabe mit Aufforderunginput(): Eingabe ohne Aufforderungint(input()): Ganzzahl abrufenfloat(input()): Gleitkommazahl abrufeninput().split(): Mehrere Zeichenketten abrufenmap(int, input().split()): Mehrere Ganzzahlen abrufen (empfohlen)
Unterschiede zwischen Python2 und Python3
In Python2:
raw_input(): Gibt eine Zeichenkette zurückinput(): Führt den Ausdruck aus (birgt Sicherheitsrisiken)
In Python3:
- Nur beibehalten
input() - Gibt einheitlich eine Zeichenkette zurück, sicherer und einfacher zu verstehen
Kernzusammenfassung
Zusammenfassung in einem Satz:
input() = 获取输入 + 返回字符串
- Gibt standardmäßig eine Zeichenkette zurück
- Muss bei Berechnungen Typen konvertieren
- Für mehrere Eingaben wird die Verwendung von split() + map() empfohlen
Andere Erweiterungen