如何统计某行之后的行数
我正在尝试写一段代码,用来计算在某一特定行之后的行数。我想统计在我的文件中,{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} 的特定行之后的行数。
有没有人能分享一些想法?
2 个回答
1
计算文件中总共有多少行,查看你的标签出现在第几行,然后从总行数中减去这个行号。
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)