Check if a given key already exists in a dictionary

I wanted to test if a key exists in a dictionary before updating the value for the key.
I wrote the following code:

I think this is not the best way to accomplish this task. Is there a better way to test for a key in the dictionary?


in is the intended way to test for the existence of a key in a dict.

If you wanted a default, you can always use dict.get():

… and if you wanted to always ensure a default value for any key you can use defaultdict from the collections module, like so:

… but in general, the in keyword is the best way to do it.