¿Por qué se evalúa el valor predeterminado en dict.get(key[, default])
incluso si la clave está en el diccionario?dict.get(): arg predeterminado evaluado incluso en caso de éxito
>>> key = 'foo'
>>> a={}
>>> b={key:'bar'}
>>> b.get(key, a[key])
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
b.get(key, a[key])
KeyError: 'foo'
+1 - zen de Python: "Los casos especiales no son lo suficientemente especiales como para romper las reglas". – Sake
+1 zen de pitón – Doboy
Esta debería ser la respuesta aceptada. –