You now know some common places where Python’s
KeyError exception could be raised and some great solutions you could use to prevent them from stopping your program.
Now, the next time you see a
KeyError raised, you will know that it is probably just a bad dictionary key lookup. You will also be able to find all the information you need to determine where the error is coming from by looking at the last few lines of the traceback.
If the problem is a dictionary key lookup in your own code, then you can switch from accessing the key directly on the dictionary to using the safer
.get() method with a default return value. If the problem isn’t coming from your own code, then using the
except block is your best bet for controlling your code’s flow.
Exceptions don’t have to be scary. Once you know how to understand the information provided to you in their tracebacks and the root cause of the exception, then you can use these solutions to make your programs flow more predictably.
Congratulations, you made it to the end of the course! What’s your #1 takeaway or favorite thing you learned? How are you going to put your newfound skills to use? Leave a comment in the discussion section and let us know.