diff --git a/blog_images/fruit-feast.jpg b/blog_images/fruit-feast.jpg new file mode 100644 index 000000000..90f533999 Binary files /dev/null and b/blog_images/fruit-feast.jpg differ diff --git a/blog_posts/python-dict-getkey-vs-dictkey.md b/blog_posts/python-dict-getkey-vs-dictkey.md new file mode 100644 index 000000000..d931dc13d --- /dev/null +++ b/blog_posts/python-dict-getkey-vs-dictkey.md @@ -0,0 +1,23 @@ +--- +title: "Tip: You should use dict.get(key) instead of dict[key]" +type: tip +tags: python,dictionary +authors: maciv +cover: blog_images/fruit-feast.jpg +excerpt: Learn the difference between two common ways to access values in Python dictionaries and level up your code today. +--- + +A common debate among Python developers seems to stem from the retrieval of dictionary values, which can be accomplished using either `dict[key]` or `dict.get(key)`. + +Although you can achieve the same result using either one, `dict.get()` is usually preferred, as it accepts a second argument which acts as the default value shall the key not exist in the given dictionary. Due to this property, `dict.get()` will always return a value, whereas `dict[key]` will raise a `KeyError` if the given key is missing. + +```python +a = { 'max': 200 } +b = { 'min': 100, 'max': 250 } +c = { 'min': 50 } + +a['min'] + b['min'] + c['min'] # throws KeyError +a.get('min', 0) + b.get('min', 0) + c.get('min', 0) # 150 +``` + +**Image credit:** [Danielle MacInnes](https://unsplash.com/@dsmacinnes?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) on [Unsplash](https://unsplash.com?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)