目前我有:
for line in f:
if line == promble:
print("check")
我想让程序在我选择的行之后打印行。救命。
答案 0 :(得分:0)
如果你想测试一个文件中的一行,如果它匹配打印文件中的下一行,请尝试:
selected = False
for line in f:
if selected:
print line
selected = False
if line == promble:
selected = True
答案 1 :(得分:0)
使用enumerate
for index,line in enumerate(f):
if line == promble:
print f[index+1]
答案 2 :(得分:0)
您的file
对象f
具有__iter__
属性,因此您可以应用next
来获取循环中的下一个项目:
for line in f:
if line == promble:
print(next(f)) # prints next line after the current one
如果f
既不是file
对象也不是iterator
,您可以致电iter
f
来制作一个:{/ p>
it = iter(f)
for line in it:
if line == promble:
print(next(it))
如果f
已经是迭代器,那么在iter
上调用f
将再次返回f
,因此它仍能正常工作。