Вывод значения по умолчанию для отсутствующего ключа словаря

Обращение к несуществующему ключу словаря вызывает исключение. Избежать этого можно, вызывая метод get. В указанном случае метод выдает None (по умолчанию) или заданное значение аргумента.



#codeexample



d = {'a':1, 'b':2}

print(d.get('c'))

print(d.get('c', 3))

# На выходе:

None

3




При создании собственного типа данных на основе словарей обратите внимание на метод __missing__ для возвращения аргумента при отсутствии ключа:



class MyDict(dict):

def _missing_(self, key):

return key



D = MyDict(a=1, b=2)

print(D)

print(D['a'])

print(D['c'])

# На выходе:

{'a': 1, 'b': 2}

1

c