2010-01-01 22 views

risposta

24

Questa sintassi significa scrittura su un oggetto file (sys.stderr in questo caso) anziché sullo standard output. [Link]

In Python 3.0, print diventa una funzione invece di una dichiarazione: [Link]

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

Si noti che questa è la sintassi di Python 2.x. Python 3.0 ha una funzione di stampa e il reindirizzamento avviene in modo completamente diverso. –

5

Dal Python documentation:

stampa ha anche una forma estesa, definito dalla seconda parte del la sintassi descritta sopra. Questo modulo è a volte indicato come "stampa chevron." In questo modulo, la prima espressione deve >>> valutare in un oggetto "tipo file", in particolare un oggetto che ha un metodo write() come descritto sopra. Con questo modulo esteso , le espressioni successive sono stampate su questo oggetto file. Se la prima espressione di restituisce None, , sys.stdout viene utilizzato come file per l'output.