print
é apenas um invólucro fino que formata as entradas (modificáveis, mas por padrão com um espaço entre args e newline no final) e chama a função de gravação de um determinado objeto. Por padrão, esse objeto é sys.stdout
, mas você pode transmitir um arquivo usando o formulário "chevron". Por exemplo:
print >> open('file.txt', 'w'), 'Hello', 'World', 2+3
Consulte: https://docs.python.org/2/reference/simple_stmts.html?highlight=print#the-print-statement
No Python 3.x, print
torna-se uma função, mas ainda é possível passar algo diferente de sys.stdout
graças ao file
argumento.
print('Hello', 'World', 2+3, file=open('file.txt', 'w'))
Consulte https://docs.python.org/3/library/functions.html#print
No Python 2.6+, print
ainda é uma instrução, mas pode ser usada como uma função com
from __future__ import print_function
Atualização: Bakuriu comentou ao ressaltar que há uma pequena diferença entre a função de impressão e a instrução de impressão (e, geralmente, entre uma função e uma instrução).
Em caso de erro ao avaliar argumentos:
print "something", 1/0, "other" #prints only something because 1/0 raise an Exception
print("something", 1/0, "other") #doesn't print anything. The function is not called