Python dictionaries, key existence with fallback
python
Solution
You should most definitely not use the second form, because it will throw a `KeyError` if the key does not exist your dictionary. You're only getting acceptable behavior out of the second form because the key was set.
Problem
Is there any difference, gotcha or disadvantage between these approaches? ``` foo = dict(key=u"") bar = foo.get('key', 'foobar') ``` vs ``` foo = dict(key=u"") bar = bool(foo['key']) or 'foobar' ```