如何通过python代码只打印输出的前几行



在python 2.7中是否有一种特殊的方法/函数只打印输出的前几行。我们知道,在终端,我们可以通过"$head-3"看到前3行。我必须为循环编写一个python吗。

with open('file1.txt') as f:
    for i in xrange(3):
        print f.readline()
import sys 
class Logger(object):
    def __init__(self, n):
        self.n = n 
        self.count = 0 
        self.terminal = sys.stdout

    def write(self, message):
        self.count+=1
        if self.count<self.n:
            self.terminal.write(message)

sys.stdout = Logger(10)

现在,当您使用打印时,只会打印前10行,另一行将被忽略

我使用的是大型xml,它产生的输出比控制台显示的要多。我正在使用:

import lxml.etree as etree
print etree.tostring(large_xml_root)[0:300]

只看到这个xml的开头。

这并不是你们所要求的,但我在这篇文章中寻找类似上面的解决方案。

最新更新