python字典检查与关键

时间:2018-11-16 17:42:27

标签: python dictionary

我要检查我的密钥是否等于输入内容:

topics = c.classify("what about ")
a = topics.keys() 
if a == "resources": 
    print("yes")

但是a被存储为dict_keys(['resource“]) 我希望a只是“资源”。 有人可以帮我吗?

2 个答案:

答案 0 :(得分:1)

您应该首先将密钥转换为常规的python列表,然后在其中进行迭代(您可能无需转换即可完成此操作,但我认为查找起来更简单)。

topics = c.classify("what about ")
a = list(topics.keys())
for key in a:
    if key == "resources": 
        print("yes")

别忘了一个字典可以有多个值。 正如@ rob-bricheno所说,您可以使用in运算符来简化它。该运算符将遍历list,如果您指定的元素在其中,则返回True,否则将返回False值。因此,您可以使用以下简化代码来做到这一点:

topics = c.classify("what about ")
a = list(topics.keys())
if "resources" in a:
    print("yes")

resourcesa列表中时,如果条件为True,则print将被调用。如果不在a中,则print将跳过。

答案 1 :(得分:0)

您可以使用min(prices.values())。将其与字典一起使用时,它将检查您指定的值是否是字典中的键。

in

这是最快,最标准的方法。在此处阅读更多Python dictionary keys. "In" complexity