给定一个列表,我需要返回唯一项列表的列表。我想看看是否有更Python的方式比我想出了:列表中的唯一列表
def unique_lists(l):
m = {}
for x in l:
m[x] = (m[x] if m.get(x) != None else []) + [x]
return [x for x in m.values()]
print(unique_lists([1,2,2,3,4,5,5,5,6,7,8,8,9]))
输出:
[[1], [2, 2], [3], [4], [5, 5, 5], [6], [7], [8, 8], [9]]
谢谢你的柜台,GROUPBY和defaultdict的解决方案!我今天学了些新东西。 – 2012-03-30 04:21:46