好的,好的。有点讨厌这个。我有一个包含多个'部分的文件。在里面。文件可能,如下所示:
"""
Begin presentation. Welcome the new guest. Do this, do that
[+] Start group 1
+derrek
+bob
+james
+harry
[+] Start group 2
+Will
+Paul
+Mark
+Eric
Hello and welcome to this years presentation of the "New Show" feature me your host Troy Mcleur. Something blah blah blah
"""
所以,我的问题是,是否有可能编写一些Python来解析第一组和第二组名称,所以你只打印它们?所以,输出只会是:
[+] Start group 1
derrek
bob
james
harry
[+] Start group 2
Will
Paul
Mark
Eric
目前,我目前的代码是:
for line in file:
if 'Start Group' in line:
print line
break
for line in file:
if 'Start Group' in line:
break
print line
这只会打印第1组,它不会打印下一组。此外,偶尔有些文件可能包含2到9个组,因此我需要它来遍历并查找Group的所有实例,并打印其中的所有名称。
答案 0 :(得分:1)
这可行:
from __future__ import print_function
show = False
for line in fobj:
if line.strip().startswith('[+]'):
print()
show = True
elif not line.strip():
show = False
if show:
print(line, end='')
输出:
[+] Start group 1
+derrek
+bob
+james
+harry
[+] Start group 2
+Will
+Paul
+Mark
+Eric