我要检查我的密钥是否等于输入内容:
topics = c.classify("what about ")
a = topics.keys()
if a == "resources":
print("yes")
但是a
被存储为dict_keys(['resource“])
我希望a
只是“资源”。
有人可以帮我吗?
答案 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")
当resources
在a
列表中时,如果条件为True
,则print
将被调用。如果不在a
中,则print
将跳过。
答案 1 :(得分:0)
您可以使用min(prices.values())
。将其与字典一起使用时,它将检查您指定的值是否是字典中的键。
in
这是最快,最标准的方法。在此处阅读更多Python dictionary keys. "In" complexity