【发布时间】:2017-12-12 11:46:09
【问题描述】:
假设我有一个这样的列表:
[1.0, 1.0, -1.0, -1.0, -1.0, -1.0, -1.0, 1.0, -1.0, -1.0, -1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, -1.0, -1.0, -1.0, 1.0, 1.0, 1.0, -1.0, -1.0, 1.0, -1.0, 1.0, -1.0, 1.0, 1.0, 1.0, 1.0, -1.0, -1.0, 1.0, 1.0, 1.0, 1.0, 1.0, -1.0, -1.0, -1.0, -1.0, 1.0, -1.0, 1.0, -1.0, 1.0, -1.0, 0.0, 1.0, 1.0, -1.0, 1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0]
我想检查 1 和 -1 的连续性。
预期输出:
[(1.0, 1.0), (-1.0, -1.0, -1.0, -1.0, -1.0), (1.0), (-1.0, -1.0, -1.0, -1.0, -1.0),....,(1.0), (0,0), (1.0, 1.0),( -1.0, 1.0, -1.0, -1.0, -1.0, -1.0, -1.0, -1.0)]
[1,-1,1,-1,....,1,0,1,-1]
对于连续的正负值,它只会返回一个。
这让我有点困惑。任何人都可以帮助或建议我正确的方法。
任何帮助将不胜感激。
【问题讨论】:
-
[tuple(g) for _, g in itertools.groupby(l)]?