如果我有以下内容:
[(1,2),(2,3),(0,0),(4,0),(0,1),(3,9),(2,0),(2,4)]
我怎样才能把它分成:
[(1,2),(2,3)], [(0,1),(3,9)], [(2,4),]
每次我在索引 1 处看到一个带有 0 的元组时,例如(1,0),我拆分列表。
最佳答案
试试这个:
from itertools import groupby
x = [(1,2), (2,3), (0,0), (4,0), (0,1), (3,9), (2,0), (2,4)]
print [l for l in [list(group) for key, group in groupby(x, key=lambda k: k[1]==0)]
if l[0][1] != 0]
[OUT] [[(1,2), (2,3)], [(0,1), (3,9)], [(2,4)]]
它会生成一个列表,您可以遍历该列表以获取这些子列表。
关于python - 根据元组内的值拆分元组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13327105/