Emulating switch/case Statements in Python

Dan Bader

Dan Bader 4 Lessons 10m
intermediate python

Python doesn’t have switch/case statements so it’s often necessary to write long if/elif/else chains as a workaround. Here’s a little trick you can use to emulate switch/case statements in Python using dictionaries and first-class functions.

Basically we’re using Python dictionaries as a lookup table to replace a nested “if elif else” statement with a cleaner and more maintainable implementation.

In some cases this can be faster than if-then-else chains and easier to maintain, too. To see if this method is right for you watch the video tutorial and learn how to apply this technique to write nice and clean Python.

About Dan Bader

Dan Bader Dan Bader

Dan is the Chief Python Nut at Real Python. He helps Python developers take their coding skills to the next level with Python tutorials, books, and online training.

» More about Dan

Each tutorial at Real Python is created by a team of developers so that it meets our high quality standards. The team members who worked on this tutorial are:

« Browse All Courses