2010-01-01 12 views

Antwort

24

Diese Syntax bedeutet, dass in ein Dateiobjekt (sys.stderr in diesem Fall) anstelle der Standardausgabe geschrieben wird. [Link]

In Python 3.0 wird print eine Funktion anstelle einer Anweisung: [Link]

print("Error in atexit._run_exitfuncs:", file=sys.stderr) 
+0

Beachten Sie, dass dies Python 2.x Syntax ist. Python 3.0 hat den Druck als Funktion und die Umleitung erfolgt komplett anders. –

5

Vom Python documentation:

Druck hat auch eine erweiterte Form, durch den zweiten Abschnitt definiert, der die Syntax oben beschrieben. Dieses Formular ist manchmal als "Drucken Chevron" bezeichnet. In diesem Formular Ausdruck nach dem >> muss zu einem "dateiähnlichen" Objekt, speziell ein Objekt, das eine write() Methode als hat oben beschrieben. Mit diesem erweiterten Formular werden die nachfolgenden Ausdrücke auf dieses Dateiobjekt gedruckt. Wenn der erste Ausdruck von zu None, , ausgewertet wird, wird sys.stdout als Datei für die Ausgabe verwendet.