.get with tuples with dictionaries

时间:2017-11-12 21:45:58

标签: python python-3.x dictionary tuples

假设我有一个以元组为例的词典,例如

dictionary = {('a','b'):1, ('c','d'):2}

如果您在使用None时尝试使用不在词典中的键找到值,是否可以返回.get()

我已经尝试了

dictionary.get('a','c')

但是这会返回一个整数,我已经尝试了

dictionary.get(['a','c'])

dictionary.get([('a','c')])

但两者都返回了类型错误。

1 个答案:

答案 0 :(得分:7)

要使用('a', 'c')作为键,您需要这样写:

dictionary.get(('a', 'c'))

注意加倍括号,这样就必须将元组作为关键参数传递。

如果你写dictionary.get('a', 'c'), 这意味着'a'是获得的关键, 并且'c'是在密钥不存在时返回的默认值。

并且dictionary.get(['a','c'])不起作用, 因为[...]是一个列表,而且它不是可混合的类型。 在任何情况下,['a', 'c']都不等于('a', 'c'), 所以无论如何也不会匹配。