在Python中合并两个嵌套列表

2024-04-25 22:34:34 发布

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

我有两个清单:

x = [['a', 1], ['b', 2], ['c', 3]]
y = [['a', 4], ['c', 6]]

我只想保留字母的共同元素,并将这两个列表合并为:

^{pr2}$

我怎么能做到呢?在


Tags: 元素列表字母pr2
3条回答

像这样(未经测试):

Z=[]
for x1, x2 in x:
    for y1, y2 in y:
        if x1 == y1:
            z.append([x1, x2, y2])

一般来说,字典对这类事情要好得多。在

z = {}
for key, val in x + y:
    z[key] = z.get(key, []) + [val]
print z #{'a': [1, 4], 'c': [3, 6], 'b': [2]}
print a["b"] #[2]
print a["c"] #[3, 6]
>>> x = [['a', 1], ['b', 2], ['c', 3]]
>>> y = [['a', 4], ['c', 6]]
>>> lazy = dict
>>> lazyx = lazy(x)
>>> lazyy = lazy(y)
>>> [[lazy, lazyx[lazy], lazyy[lazy]] for lazy in lazyx if lazy in lazyy]
[['a', 1, 4], ['c', 3, 6]]

相关问题 更多 >