我试图循环遍历一系列文本文件,我想通过检查下一行的值来实现。文本文件的输入如下所示:
Person1
(COUNT)|key
1|************
Person2
(COUNT)|key
// and so on
有些人可能有钥匙而有些人可能没有钥匙。我正在尝试编写一个循环,检查至少3个连续行(有键的人)之前的空格,如Person1
示例,其中每行以字符开头,我只想打印那些情况。
我目前的循环如下:
for line in input:
if re.match(r'\S', line):
line1 = line
print(line1)
if re.match(r'\S', input.next()):
line2 = line
print(line2)
if re.match(r'\S', input.next()):
line3 = line
print(line3)
然而,我似乎无法使这个循环正确。它似乎是打印人三次,有时只打印键。寻找任何可用的指导。
答案 0 :(得分:2)
您可以使用enumerate
获取当前索引,也可以检查下一行。当你到达文件的末尾时,你需要注意这种情况。
for i, line in enumerate(input):
if i == len(input) - 2:
break
next_line = line[i+1]