Подтвердить что ты не робот

Как работает оператор смены сдвига в инструкции печати python?

Я видел, как кто-то использовал "print" с " → " для записи файлов в файл:

In [7]: with open('text', 'w') as f:
   ...:     print >> f, "Hello, world!"
   ...:

In [8]: !type text
Hello, world!

Как это работает? Когда следует использовать это вместо использования метода "write"?

4b9b3361

Ответ 1

От https://docs.python.org/2/reference/simple_stmts.html#the-print-statement

print также имеет расширенную форму, определяемый второй частью синтаксис, описанный выше. Эта форма иногда называемый "print шеврон". В этой форме первый выражение после → должно оценивать к "файлоподобному" объекту, в частности объект, который имеет метод write() как описано выше. С помощью этого расширенного формы, последующие выражения печатается в этот файл. Если первое выражение оценивается как None, то sys.stdout используется как файл для вывода.