如何检查当前密钥是否在我的字典中?

时间:2013-09-07 08:56:17

标签: python python-2.7 dictionary

我想在我的代码中添加一个if语句,用于检查当前密钥是否在我的字典中。我试图这样做:

if key in my_dict:
    pass

但它不起作用。那么如何检查当前密钥是否在我的字典中?

感谢。

2 个答案:

答案 0 :(得分:1)

这就是你如何诡异地做到这一点。你可能误解了pass的作用:

  

pass语句什么都不做。当语法需要语句但程序不需要操作时,可以使用它。


请注意,您可能会看到my_dict.has_key(key)之类的内容。过去常用,但不应与python 2.7及以上版本一起使用。

答案 1 :(得分:0)

pass是一个空操作 - 执行时,没有任何反应

您的方式是正确的:

>>> a
{'a': 1, 'b': 2}
>>> if 'a' in a:
...     print 'hello'
... 
hello

有些人可能希望以这种方式进行检查。但是不要这样做。

>>> a = {'a': 1, 'b':2}
>>> a
{'a': 1, 'b': 2}
>>> a.keys()
['a', 'b']
>>> if 'a' in a.keys():
...     print 'hello'
... 
hello
>>> 

不要这样做!

正如Martijin指出的那样,它很慢,因为你必须首先生成列表并再次检查该元素的列表。