2011-05-31 41 views
1

使用Python,如何在给定起始和结束行号的情况下打印文本文件的行?家庭作业 - 在两行号码之间打印文件行

我想出了一个函数,但这不起作用。

def printPart(src, des, varFile): 
    returnLines = "" 
    for curLine in range(src, des): 
     returnLines += linecache.getline(varFile, curLine) 
    return returnLines 
+0

请修正您的示例中的缩进;让我的眼睛受伤... – 2011-05-31 13:43:29

回答

7

由于文件对象是可迭代的Python,可以从itertools将其应用于所有的功能。看看itertools.islice()。 (因为这是作业,我会把细节留给你)。

+0

+1你应该学会使用'itertools',这非常棒。 – katrielalex 2011-05-31 13:43:26

1

我将从文件的第一行开始,使用readline()读取每行的计数count += 1。一旦计数到达开始行号,开始打印。一旦到达最后一行号码,请在您的示例中修复缩进; sys.exit()