gpt4 book ai didi

python - 根据字典赋值

转载 作者:太空宇宙 更新时间:2023-11-03 13:06:38 24 4
gpt4 key购买 nike

我有一个 list1 的名字:

   ["SAM","TOM","LOUIS"]

我有一个像这样的 dict1(在值列表中没有重复的名称:

{"NICE": ["SAM", "MAIK", "CARL", "LAURA", "MARTH"],
"BAD": ["LOUIS", "TOM", "KEVIN"],
"GOOD": ["BILL", "JEN", "ALEX"]}

我如何遍历 list1,以便如果任何名称出现在 dict1 的任何列表中,它就会分配字典的相应键?

我期待生成以下输出:

["NICE","BAD","BAD"]

这将对应于列表中出现的值的键:SAM、TOM、LOUIS。

我是这样想的:

lista=[]
for k,v in dict1:
for values in arr1:
if values in v:
lista.append(v)
lista

但是不确定如何迭代不同的 v,我怎样才能以有效的方式获得所需的输出?

最佳答案

您可以创建一个中间字典,将名称映射到它们在 dict1 中的键:

categories = {name: category for category, names in dict1.items() for name in names}

这样您就可以有效地将 list1 中的名称映射到它们各自的键:

[categories[name] for name in list1]

返回:

['NICE', 'BAD', 'BAD']

关于python - 根据字典赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57402765/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com