对于python字典,如果请求的密钥不存在,是否可以创建字典默认的密钥?
编辑:我无法理解下面及以上解决方案如何解决问题
如果我要求字典[' xxx']其中xxx不是已知值或变量,它可以是任何字符串,我怎样才能使用字典[' key']和dictionary.get(' key',' defaultvalue')
EDIT2:
spouse={John:Joan, Bob:Marry}
当我要求配偶[Dan]时,我应该得到"没有结婚"
对于任何来到用户心中的男性鬃毛都应该这样做,而且它不是字典中的关键
我希望现在更清楚了
defaultdict 评论似乎是唯一有用的
答案 0 :(得分:0)
当调用可能有或没有给定键的字典时,您可以设置如下默认值:
>>> my_dict = {'color':'red', 'size':'2'}
>>> my_dict.setdefault('style', 'round')
'round'
>>> my_dict = {'color':'red', 'size':'2', 'style':'square'}
>>> my_dict.setdefault('style', 'round')
'square'
关于您编辑过的问题:
EDIT2:
spouse={John:Joan, Bob:Marry}
当我要求配偶[Dan]时,我应该得到"没有结婚"同样应该去 对于任何来到用户心中的男性名字,它不是一个关键 字典
你可以这样做:
>>> spouse = {}
>>> spouse['Jim']='Lucy'
>>> spouse['Alex']='Sandra'
>>> users = ['Dan', 'Phil','Jim','Alex']
>>> for i in range(len(users)):
>>> s = spouse.setdefault(users[i], 0)
>>> if s == 0:
>>> print "%s is not married" % users[i]
>>> else:
>>> print "%s's spouse is %s" % (users[i],s)
'Dan is not married'
'Phil is not married'
'Jim's spouse is Lucy'
'Alex's spouse is Sandra'