2010-01-01 8 views

Répondre

24

Cette syntaxe signifie écrire dans un objet fichier (sys.stderr dans ce cas) au lieu de la sortie standard. [Link]

En Python 3.0, print devient une fonction au lieu d'une déclaration: [Link]

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

Notez qu'il s'agit de la syntaxe Python 2.x. Python 3.0 a l'impression en tant que fonction, et la redirection est faite complètement différemment. –

5

De l'Python documentation:

impression a aussi une forme étendue, définie par la deuxième partie de la syntaxe décrite ci-dessus. Ce formulaire est parfois appelé "print chevron." Dans cette forme, la première expression après le >> doit évaluer à un objet de type "fichier", plus précisément un objet qui a une méthode write() décrit ci-dessus. Avec ce formulaire étendu , les expressions suivantes sont imprimées à cet objet fichier. Si la première expression est évaluée à None, , sys.stdout est utilisé comme fichier pour la sortie.