print
est juste un wrapper fin qui formate les entrées (modifiables, mais par défaut avec un espace entre args et newline à la fin) et appelle la fonction d'écriture d'un objet donné. Par défaut, cet objet est sys.stdout
, mais vous pouvez passer un fichier en utilisant le formulaire "chevron". Par exemple:
print >> open('file.txt', 'w'), 'Hello', 'World', 2+3
Voir: https://docs.python.org/2/reference/simple_stmts.html?highlight=print#the-print-statement
En Python 3.x, print
devient une fonction, mais il est toujours possible de passer autre chose que sys.stdout
grâce à l' file
argument.
print('Hello', 'World', 2+3, file=open('file.txt', 'w'))
Voir https://docs.python.org/3/library/functions.html#print
En Python 2.6+, print
est toujours une instruction, mais elle peut être utilisée comme une fonction avec
from __future__ import print_function
Mise à jour: Bakuriu a commenté pour souligner qu'il existe une petite différence entre la fonction d'impression et l'instruction d'impression (et plus généralement entre une fonction et une instruction).
En cas d'erreur lors de l'évaluation des arguments:
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