嵌套列表的列表理解(子列表)

2024-09-29 17:21:21 发布

您现在位置:Python中文网/ 问答频道 /正文

下面的列表是我想要的。我的问题是,有没有一种方法可以在不必包含所有特定元素索引的情况下编写代码?目标是根据包含的输出,将子列表的成员与其各自的外部成员合并。你知道吗

myList = [['pKey_a', ['va1', 'va2', 'va3', 'va4']], ['pKey_b', ['vb1', 'vb2', 'vb3', 'vb4']], ['pKey_c', ['vc1', 'vc2', 'vc3', 'vc4']], ['pKey_d', ['vd1', 'vd2', 'vd3', 'vd4']], ['pKey_e', ['ve1', 've2', 've3', 've4']]]

myListComp = [[d[0], d[1][0], d[1][1], d[1][2], d[1][3]] for d in myList]

print myListComp
'''
[
['pKey_a', 'va1', 'va2', 'va3', 'va4'],
['pKey_b', 'vb1', 'vb2', 'vb3', 'vb4'],
['pKey_c', 'vc1', 'vc2', 'vc3', 'vc4'],
['pKey_d', 'vd1', 'vd2', 'vd3', 'vd4'],
['pKey_e', 've1', 've2', 've3', 've4']
]
'''

Tags: 列表成员vc3mylistpkeyvb1vc2vc1
1条回答
网友
1楼 · 发布于 2024-09-29 17:21:21

使用列表串联:

myListComp = [d[:1] + d[1] for d in myList]

演示:

>>> myList = [['pKey_a', ['va1', 'va2', 'va3', 'va4']], ['pKey_b', ['vb1', 'vb2', 'vb3', 'vb4']], ['pKey_c', ['vc1', 'vc2', 'vc3', 'vc4']], ['pKey_d', ['vd1', 'vd2', 'vd3', 'vd4']], ['pKey_e', ['ve1', 've2', 've3', 've4']]]
>>> [d[:1] + d[1] for d in myList]
[['pKey_a', 'va1', 'va2', 'va3', 'va4'], ['pKey_b', 'vb1', 'vb2', 'vb3', 'vb4'], ['pKey_c', 'vc1', 'vc2', 'vc3', 'vc4'], ['pKey_d', 'vd1', 'vd2', 'vd3', 'vd4'], ['pKey_e', 've1', 've2', 've3', 've4']]

相关问题 更多 >

    热门问题