Heim  >  Artikel  >  Backend-Entwicklung  >  Analyse und Einführung in den Unterschied zwischen input() und raw_input() in Python

Analyse und Einführung in den Unterschied zwischen input() und raw_input() in Python

高洛峰
高洛峰Original
2017-03-07 16:13:571431Durchsuche

Werfen wir einen Blick auf den Quellcode der Eingabe

def input(prompt):
return eval(raw_input(prompt))

Tatsächlich auch input ruft raw_input auf, führt einfach die Auswertungsverarbeitung durch

und welche Rolle spielt die Auswertung?

Eingabe: Die Typkonvertierung erfolgt basierend auf der Benutzereingabe.
raw_input: Die Benutzereingabe wird als Zeichenfolge verarbeitet.

Das Folgende ist eine detaillierte Ergänzung:

Zunächst wissen wir, dass input() und raw_input() verwendet werden, um Eingaben von der Konsole zu erhalten. Natürlich können Sie bei der Eingabe Eingabeaufforderungsinformationen hinzufügen:

        a = raw_input("Please input a:")
        b = input("Please input b:")

Also Was ist der Unterschied zwischen den beiden?

input() unterstützt Benutzer bei der Eingabe von Zahlen oder Ausdrücken, unterstützt jedoch nicht die Eingabe von Zeichenfolgen. Es gibt einen numerischen Wert zurück. Raw_input() erfasst die ursprüngliche Eingabe, was bedeutet, dass es einen String zurückgibt. Wenn die Eingabe also eine Zahl ist, müssen wir eine erzwungene Konvertierung durchführen. Zum Beispiel:

   a = int(raw_input("Please input the number a:"))

Tatsächlich wird input() im Wesentlichen mit raw_input() implementiert. Es ruft daher nur die Funktion eval() nach dem Aufruf von raw_input() auf () , andernfalls empfehlen wir generell die Verwendung von raw_input() für die Interaktion mit Benutzern.


map empfängt eine Funktion und ein iterierbares Objekt (z. B. eine Liste) als Parameter, verarbeitet jedes Element mit der Funktion und gibt eine neue Liste zurück.
ACM muss manchmal eine Formatzeile wie a b c eingeben. In diesem Fall wird zur Verarbeitung die Map-Funktion verwendet. Dabei wird davon ausgegangen, dass a, b und c alle Ganzzahlen sind.
a,b,c = map(int, raw_input().split()), die Funktion raw_input gibt eine Zeichenfolge ein und die Split-Methode der Zeichenfolge wird verwendet, um die Zeichenfolge in Sequenzen aufzuteilen.

Weitere verwandte Artikel zur Analyse und Einführung des Unterschieds zwischen input() und raw_input() in Python finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn