【发布时间】:2015-10-27 12:52:35
【问题描述】:
我环顾列表理解,发现有些奇怪。 代码:
a = ['a', 'a', 'a', 'b', 'd', 'd', 'c', 'c', 'c']
print [(len(list(g)), k) if len(list(g)) > 1 else k for k, g in groupby(a)]
结果:
[(0, 'a'), 'b', (0, 'd'), (0, 'c')]
但我想看看:
[(3, 'a'), 'b', (2, 'd'), (3, 'c')]
这种行为的原因是什么?
【问题讨论】: