print
це лише тонка обгортка, яка форматує вхідні дані (можуть змінюватися, але за замовчуванням з пробілом між аргами та новою лінією в кінці) і викликає функцію запису заданого об'єкта. За замовчуванням цей об’єкт є sys.stdout
, але ви можете передати файл за допомогою форми "шеврон". Наприклад:
print >> open('file.txt', 'w'), 'Hello', 'World', 2+3
Дивіться: https://docs.python.org/2/reference/simple_stmts.html?highlight=print#the-print-statement
У Python 3.x, це print
стає функцією, але все ж можливо передавати щось інше, ніж sys.stdout
завдяки file
аргументу.
print('Hello', 'World', 2+3, file=open('file.txt', 'w'))
Див. Https://docs.python.org/3/library/functions.html#print
У Python 2.6+ print
іще є оператором, але його можна використовувати як функцію
from __future__ import print_function
Оновлення: Бакуріу прокоментував, щоб зазначити, що між функцією друку та твердженням друку (і загалом між функцією та висловлюванням) є невелика різниця.
У разі помилки при оцінці аргументів:
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