34

如何检查密钥是否在python的字典中定义?

a={}
...
if 'a contains key b':
  a[b] = a[b]+1
else
  a[b]=1
4

5 回答 5

87

使用in运算符:

if b in a:

演示:

>>> a = {'foo': 1, 'bar': 2}
>>> 'foo' in a
True
>>> 'spam' in a
False

你真的很想开始阅读 Python 教程,字典部分涵盖了这个主题。

于 2013-10-08T07:31:45.630 回答
8

它的语法是if key in dict:

if "b" in a:
    a["b"] += 1
else:
    a["b"] = 1

现在你可能想看看collections.defaultdictand (对于上述情况)collections.Counter

于 2013-10-08T07:31:59.837 回答
2
a = {'foo': 1, 'bar': 2}
if a.has_key('foo'):
    a['foo']+=1
else:
    a['foo']=1
于 2013-10-08T10:31:19.310 回答
1
parsedData=[]
dataRow={}
if not any(d['url'] == dataRow['url'] for d in self.parsedData):
       self.parsedData.append(dataRow)
于 2015-01-16T05:00:08.040 回答
1
if b in a:
     a[b]+=1
else:
    a[b]=1
于 2013-10-08T07:32:23.653 回答