2016-05-29 22 views
2

Wenn ich einen Syntaxfehler zum Beispiel bekommen, erhalte ich diesen Textblock:Was bedeutet Stdin in Python-Fehlern?

File "<stdin>", line 1, in ? 
    while True print('Hello world') 
     while True print('Hello world') 
        ^
SyntaxError: invalid syntax 

ich tat etwas Forschung und fand ich heraus, gibt es drei Standard-Streams ...

„Die drei I/O-Verbindungen heißen Standardeingabe (stdin), Standardausgabe (stdout) und Standardfehler (stderr). "

Warum ist das nicht der Standardfehler?

+0

Kurz gesagt: die Fehlermeldung sagt Ihnen nicht, wo die Fehlermeldung gesendet wurde, es zeigt Ihnen, wo der Fehler aufgetreten ist. – TigerhawkT3

Antwort

1

Ihr while benötigt einen Doppelpunkt (:). Sie erhalten einen Fehler unter stdin, weil Sie das Skript in der Befehlszeile eingeben und Python (der python Befehl, in den Sie Text eingeben) liest es aus seinem stdin Strom (d. H. Das Terminal). Sie haben einen Fehler in Pythons stdin eingegeben und das sagt Ihnen das.

while True: 
    print('Hello world') 
4

Da die Quelle des Codes stdin ist, z. Es wurde an einer Konsole eingegeben.