Python:将文件打印到标准输出
我search了,我只能find其他方法的问题:写标准input文件:)
有没有一种快速简单的方法来转储文件的内容到标准输出?
当然。 假设你有一个名为fname
的文件名string,下面是这个技巧。
with open(fname, 'r') as fin: print fin.read()
如果这是一个很大的文件,而且你不想像Ben的解决scheme那样消耗大量的内存,那么需要额外的代码
>>> 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),它读取一定数量的数据并将其作为string返回。 size是一个可选的数字参数。 当大小被忽略或消极时,文件的全部内容将被读取并返回; 如果文件是机器内存的两倍,那就是你的问题了。 否则,读取并返回最多大小的字节。 如果文件已经达到,f.read()会返回一个空string(“”)。
你也可以试试这个
print ''.join(file('example.txt'))
你可以试试这个
txt = <file_path> txt_opn = open(txt) print txt_opn.read()
这会给你文件输出。