При таком варианте больше работы проделывается:
if key in mydict:
value = mydict[key]
else:
# ...
А так то надо быть внимательнее прежде чем делать замечания, я предлагал и такой вариант. Примеры с исключениями представлены как пища к размышлению. Да и стандартные типы исключений по любому знать надо.
Такой вариант так же имеет право на жизнь и он часто практикуется кем ни поподя:
_stub = object()
value = mydict.get(key, _stub)
if value is _stub:
# ...
else:
# ...
Но обычно в таком контексте:
_stub = object()
def foo(key, default = _stub):
value = mydict.get(key, default)
if value is _stub:
raise MyException
..bw