2010-12-25 13 views
16

Mi chiedevo cosa significhi print >> dbfile, key in python. Che cosa deve fare il >>?Significato di >> in print statement

+2

Incidentalmente, questo è considerato uno dei pezzi ickier della sintassi di Python. Se si preferisce che 'print' funzioni come ogni altra funzione, è possibile inserire' da __future__ import print_function' nella parte superiore del codice per utilizzare il comportamento più recente. – katrielalex

+0

Questa dichiarazione '__future__' funziona in 2.6.0a2 e successive, attenzione. http://docs.python.org/library/__future__.html –

risposta

13

Si noti che la sintassi >> è specifica per Python 2.x. In Python 3.x, che la sintassi va e codice deve essere modificato come segue:

print >>f, "Hello world"   # Python 2.x 

print("Hello world", file=f)  # Python 3.x 
+2

Penso che mi piaccia la sintassi di python 3 perché sembra più pulita – David

+0

Anche la seconda sintassi sembra funzionare se si utilizza 'da __future__ import print_function' in Python 2.7. [La documentazione di '' __future__'] (https://docs.python.org/2/library/__future__.html) indica che è disponibile per 2.6.0a2 e versioni successive. – jpmc26

8

Questo reindirizza print in un file (in questo caso, dbfile).

il >> è solo una sintassi speciale utilizzata per questo.

Problemi correlati