gpt4 book ai didi

python - 按值获取键,字典,python

转载 作者:太空狗 更新时间:2023-10-29 20:37:12 25 4
gpt4 key购买 nike

如何从值中获取键?

我的命令:

countries = {
"Normal UK project" : "1",
"UK Omnibus project" : "1-Omni",
"Nordic project" : ["11","12","13","14"],
"German project" : "21",
"French project" : "31"
}

我的半功能代码:

for k, v in countries.items():
if "1" in v:
print k

预期输出:

Normal UK project

实际输出:

French project
UK Omnibus project
German project
Normal UK project

如何修复我的代码?

最佳答案

问题是字典中值的类型不一样,这使得使用字典变得更加困难,不仅在这种情况下。虽然 Python 允许这样做,但您确实应该考虑统一字典中的类型,例如将它们全部列出。您只需一行代码即可完成此操作:

countries = {key: val if isinstance(val, list) else [val] 
for key, val in countries.items()}

现在,每个字符串都被包装到一个列表中,您现有的代码将正常工作。

或者,如果您必须使用当前形式的字典,您可以调整查找函数:

for k, v in countries.items():
if "1" == v or isinstance(v, list) and "1" in v:
print k

关于python - 按值获取键,字典,python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23295315/

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