如何遍历除python以外的文件中的所有行?
问题描述:
我想遍历除了最后一行以外的所有行并打印它们。 我能找到一些shell命令来打印除最后一行以外的所有行,但我想使用python遍历除最后一行以外的所有行。请求帮助。如何遍历除python以外的文件中的所有行?
答
最好的办法是使用一个排除列表的最后一个元素的列表片段。
def print_lines(lst):
for line in lst[0:len(lst)-1]:
print(line)
这种方法不依赖于换行符是否存在于最后一行或不的结束。
+0
谢谢。但即时通过文件循环,如“for file in filehandler:”。我没有通过一个列表 – Krishna
答
您必须阅读每一行,保存它,然后在下一个迭代中与它们一起使用。这样,你永远不会处理最后一行。
prev_line = None
for line in filehandler:
if prev_line is not None:
print prev_line
prev_line = line
答
请试试这个代码:可能我问什么
In [1]: with open(filename) as f:
...: data = f.read().split('\n')
...:
In [2]: for id in range(len(data) -1):
...: print data[id]
...:
最后几行? – Clement
为什么不循环所有行,但只是对待最后一行不同? *阅读*最后一行会有什么伤害吗? –
是的,我解析基于分隔符的行并将它们存储在别处,alst行不是我想要存储的。 – Krishna