print
es solo un contenedor delgado que formatea las entradas (modificables, pero por defecto con un espacio entre args y nueva línea al final) y llama a la función de escritura de un objeto dado. Por defecto, este objeto es sys.stdout
, pero puede pasar un archivo usando el formulario "chevron". Por ejemplo:
print >> open('file.txt', 'w'), 'Hello', 'World', 2+3
Ver: https://docs.python.org/2/reference/simple_stmts.html?highlight=print#the-print-statement
En Python 3.x, se print
convierte en una función, pero aún es posible pasar algo más que sys.stdout
gracias al file
argumento.
print('Hello', 'World', 2+3, file=open('file.txt', 'w'))
Ver https://docs.python.org/3/library/functions.html#print
En Python 2.6+, print
sigue siendo una declaración, pero se puede usar como una función con
from __future__ import print_function
Actualización: Bakuriu comentó para señalar que existe una pequeña diferencia entre la función de impresión y la declaración de impresión (y más generalmente entre una función y una declaración).
En caso de error al evaluar 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