python 解嵌套的list
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 解嵌套的list相关的知识,希望对你有一定的参考价值。
有一个列表lst_all(几百万项),里面的每项也是一个列表lst_one,里面的列表lst_one格式为['A',黄],['A',绿],['A',白],['B',黄],['C',紫],['C',蓝],即lst_all的形式为:[['A',黄],['A',绿],['A',白],['B',黄],['C',紫],['C',蓝]......]
当里面的lst_one第一项字母相等时,就把第二项颜色拼接在一起。即最终实现[['A','黄绿白'],['B','黄'],['C','紫蓝']...]
求大神简单的方法
lst_all = [['A','Blue'],['A','Green'],['A','Yellow'],['B','Red'],['C','Red'],['C','White']]
collector = []
for k, lstgroup in itertools.groupby(sorted(lst_all), lambda x: x[0]):
collector.append([k, ','.join([c[1] for c in lstgroup])])
print collector 参考技术A # coding: utf-8
lst_all = ['A','黄'],['A','绿'],['A','白'],['B','黄'],['C','紫'],['C','蓝']
d =
for sublist in lst_all: d[sublist[0]] = d.get(sublist[0],'') + sublist[1]
print sorted(d.items())
用字典的方式更简洁性能会高非常多.
以上是关于python 解嵌套的list的主要内容,如果未能解决你的问题,请参考以下文章