我有一个值列表list1:
['A','B','C','D']
我有一个字典
{1: ['A','F'],2:['B','J'],3:['C','N'],4:['D','X']}
我希望能够获取列表中每个值的密钥:
我尝试了:
[dict1[x] for x in list]
然而,它会输出一个错误,因为我没有考虑到字典值是列表而不是单个值的事实。我该如何实现这一点?
我期望的输出是一个包含list1值的键的列表:
[1,2,3,4]
我有一个值列表list1:
['A','B','C','D']
我有一个字典
{1: ['A','F'],2:['B','J'],3:['C','N'],4:['D','X']}
[dict1[x] for x in list]
然而,它会输出一个错误,因为我没有考虑到字典值是列表而不是单个值的事实。我该如何实现这一点?
我期望的输出是一个包含list1值的键的列表:
[1,2,3,4]
[k for x in lst for k, v in d.items() if x in v]
例子:
lst = ['A','B','C','D']
d = {1: ['A','F'],2:['B','J'],3:['C','N'],4:['D','X']}
print([k for x in lst for k, v in d.items() if x in v])
# [1, 2, 3, 4]
data = ['A','B','C','D']
d = {1: ['A','F'],2:['B','J'],3:['C','N'],4:['D','X']}
new_d = {i:a for a, b in d.items() for i in b}
result = [new_d[i] for i in data]
输出:
[1, 2, 3, 4]