首页 > 解决方案 > 是否可以合并 2 个列表列表?

问题描述

我有 3 个 python 列表:

第一个是数字列表:

numbers = ['4554176', '4554178', '4555289', '4555522', '4555661', '4555693', '4555695', '4556068']

第二个是 8 个列表的列表:

lists   = [
    ['dune', 'pro', 'pc', 'case'],
    ['apple', 'typische', 'kaesereiben', 'muster'],
    ['orientiert', 'profi', 'mac', 'mac'],
    ['handel', 'hersteller', 'pc', 'gehaeusen'],
    ['optik', 'kaesereibe', 'nutzer', 'ueberarbeitete', 'apple'],
    ['design', 'geklont', 'nennt', 'dune', 'pc'],
    ['oktober', 'form', 'kickstarter', 'projekts', 'realitaet'],
    ['annehmen', 'preise', 'genannt', 'signifikant'] 
]

第三个列表与第二个列表相同,但单词是词干的:

lists1   = [
    ['dune', 'pro', 'pc', 'case'],
    ['apple', 'typisch', 'kaesereibe', 'must'],
    ['orientier', 'profi', 'mac', 'mac'],
    ['handel', 'hersteller', 'pc', 'gehaeuse'],
    ['optik', 'kaesereib', 'nutz', 'ueberarbeit', 'apple'],
    ['design', 'geklon', 'nenn', 'dune', 'pc'],
    ['oktober', 'form', 'kickstart', 'projekts', 'realitaet'],
    ['annehm', 'preis', 'genann', 'signifikant'] 
]

现在我想把每个列表的无词干和词干词写入一个新列表。

此外,我想将第一个列表中的数字写入新创建的列表。

结果应如下所示:

new_list = [['dune','dune','4554176'],
           ['pro','pro','4554176'], 
           ['pc','pc','4554176']
           ...,   
           ['annehmen','annehm','4556068']]

有人可以帮忙吗?

标签: python

解决方案


只需遍历可能的值并构造一个新列表:

result = []

for i in range(len(lists)):
    for j in range(len(lists[i])):
        result.append([lists[i][j], lists1[i][j], numbers[i]])

print(result)

输出:

[['dune', 'dune', '4554176'], ['pro', 'pro', '4554176'], ['pc', 'pc', '4554176'], ['case', 'case', '4554176'] .... ]

推荐阅读