0
我在目录中有几个文本文件。在每个文本文件中,他们都有这些行Python:从文本文件打印特定范围的行
***************错误摘要****************** ****
线1
线2
线n
======================== ============
每个文本文件没有相同的行数(n)。例如file1有3行,file2有1行等等。我必须做的是从第1行打印,直到列表中的第n行。每个文件都有自己的列表。
这是我的第一个代码
target = "Error Summary"
for file in files:
content = open(os.path.join(subdir, file),'r')
for line in content:
if target in line:
chunk = ''.join(islice(content,50))
chunk = chunk.split("==", 1)[0]
chunk_list.append(chunk)
但这些会打扰我的下一个代码作为指针已经转到行51.因此,我出来与新代码
for line in content:
if target in line:
for i in range(50):
chunk = content.next()
if chunk.startswith("=="):
break
chunck_list.append(chunk)
这看起来不错。但是,所有行都打印在一个列表中。任何人都可以帮忙
---------------------------编辑------------------ -----------
我得到的代码已经
for line in content:
if target in line:
for line in content:
if line.startswith("=="):
break
chunk_list.append(line)
但产量在一个列表被压缩。我想要的是在list1中输出File1,在列表2中输出File2,等等。任何人都请帮助我..
这工作,如果我们知道行数。在我的情况下,文本文件有数百行,目标可能位于文件1的顶端,文件2的底端以及文件3的中间。任何想法? – Miyek
你可以使用下面的文件来计算行数:http://stackoverflow.com/questions/845058/how-to-get-line-count-cheaply-in-python – PseudoAj