我不需要itertools.groupby的懒惰。我只是想将我的列表分组为列表字典,如:python是否有惰性版本的itertools.groupby?
dict([(a, list(b)) for a,b in itertools.groupby(mylist, mykeyfunc)])
是否有标准功能已经这样做?
我不需要itertools.groupby的懒惰。我只是想将我的列表分组为列表字典,如:python是否有惰性版本的itertools.groupby?
dict([(a, list(b)) for a,b in itertools.groupby(mylist, mykeyfunc)])
是否有标准功能已经这样做?
不,不存在标准库中包含的功能。
+1这正好解决了这个问题 – 2010-07-14 20:20:31
懒惰是否受到任何伤害? – sth 2010-07-14 19:38:29
原则上,非懒惰版本可能更有效 - 它可以一次完成整个群组,避免懒惰开销并很好地使用缓存。即便如此,如果它引起你任何真正的问题,我会感到惊讶。我的建议,从旧歌中被盗 - “别担心会快乐”。 – Steve314 2010-07-14 19:40:11
在repl中测试懒惰代码是一种痛苦。 – dvogel 2010-07-14 19:46:05