我正在尝试编写一个代码来计算某些行之后的行数。我想计算{A B}出现在我的文件
之后出现在我文件中的所有行{A B}
1 1
0.072 108.815
0.217 108.815
0.362 108.814
我的代码如下:
from __future__ import with_statement
def file_len(fname):
with open(fname) as f:
for i, l in enumerate(f):
pass
return i + 1
t=file_len("test.ghx")
print t
我不知道如何修改它来计算包含{A B}的特定行之后的行数。
有人可以分享一些想法吗?
答案 0 :(得分:4)
将线条向上划线并包括您要查找的线条,并计算其余线条:
def file_len(fname):
with open(fname) as f:
for line in f:
if line.strip() == "{A B}":
break
return sum(1 for line in f)
答案 1 :(得分:1)
计算文件中的总行数,检查标记出现在哪一行,从总数中减去。