首页 > 解决方案 > 如何根据列表中的值创建嵌套列表?

问题描述

我有 2 个列表,我想用它们来创建一个嵌套列表:

list1=['a','a','b','c','d','d']
list2=['a1','a2','b','c','d1','d2']

result = [['a1','a2'],['b'],['c'],['d1','d2']]

这意味着我想从 list1 中为每个项目创建一个子列表(例如,这里有 4 个列表,一个用于 a,一个用于 b,一个用于 c,最后一个用于 d);和列表“结果”存储来自 list2 的值。直到现在我从来没有做过这样的事情,我读过理解列表,但我不知道如何使用它们。

标签: python-2.7listlist-comprehensionnested-lists

解决方案


list1=['a','a','b','c','d','d']
list2=['a1','a2','b','c','d1','d2']

d = {}
for key, value in zip(list1, list2):
    if !key in d:
        d[key] = []
    d[key].append(value)

d.values()

[['a1', 'a2'], ['c'], ['b'], ['d1', 'd2']]

推荐阅读