您可以将文件传递到
itertools.groupby
使用一个键指定行(去掉空格后)不为空。然后列出非空组的列表:
from itertools import groupby
path = "some/file/path"
with open(path) as f:
l = [list(g) for k, g in groupby(map(str.strip, f), key=lambda line: line != '') if k]
print(l)
这张照片是:
[["Singapore Smith's Crew"], ['Leader', 'Singapore Smith', 'd10', '3d8', ...],..etc]
groupby
生成一个迭代器,因此如果不想生成一个大列表,您也可以循环遍历这些值:
for k, g in groupby(map(str.strip, f), key=lambda line: line != ''):
if k:
# use g