我有一个清单
[True, False, False, True, True]
我需要接收
[[True],[True, True]]
Pleace可以帮助我了解如何“出色地”做到这一点。 谢谢
答案 0 :(得分:4)
您可以使用itertools.groupby
完成此操作。本质上,它将分别对True
和False
的连续运行进行分组,然后仅使用列表推导保留True
的组。
>>> from itertools import groupby
>>> values = [True, False, False, True, True]
>>> [list(g) for k, g in groupby(values) if k]
[[True], [True, True]]