Python: печать файла в stdout
Я искал, и я могу найти только вопросы о другом пути: запись stdin в файл :)
есть ли быстрый и простой способ сбросить содержимое файла в stdout?
6 ответов:
конечно. Если у вас есть строка с именем файла называется
fname
, следующее делает трюк.with open(fname, 'r') as fin: print fin.read()
Если это большой файл, и вы не хотите потреблять тонну памяти, как это может произойти с решением Бена, дополнительный код в
>>> import shutil >>> import sys >>> with open("test.txt", "r") as f: ... shutil.copyfileobj(f, sys.stdout)
тоже работает.
f = open('file.txt', 'r') print f.read() f.close()
от http://docs.python.org/tutorial/inputoutput.html
чтобы прочитать содержимое файла, вызовите f. read (size), который считывает некоторое количество данных и возвращает его в виде строки. размер является необязательным числовым аргументом. Когда размер опущен или отрицательный, все содержимое файла будет считано и возвращено; это ваша проблема, если файл в два раза больше, чем память вашего компьютера. В противном случае считываются и возвращаются не более байтов размера. Если конец файл был достигнут, f. read () вернет пустую строку ("").