如何仅从字典中提取某些值(python)

pro*_*rof 3 python dictionary list

假设我有一个列表 l=[1, 2, 3, 4] 和一个字典 d={2:a, 4:b}。我想仅在键中提取 d 的值也在我的列表中,并将结果放入新列表中。这是我迄今为止尝试过的:

new_l=[]
for i in l:
    for key in d.keys():
        if key in l:
            new_l.append(d[key])
print (new_l)
Run Code Online (Sandbox Code Playgroud)

预先感谢您的帮助。

Kar*_*mar 5

这将比较字典中的每个值以及它是否在列表中匹配。

简单回答。。

>>> l
[1, 2, 3, 4]

>>> d
{2: 'a', 4: 'b'}

>>> [value for (key,value) in d.items() if key in l] 
['a', 'b']
Run Code Online (Sandbox Code Playgroud)