In Python, there are several ways to achieve the functionality of a switch statement, which is not a built-in feature of the language. Some common alternatives include:
1. Using if-elif-else statements: This is the most basic and widely used method for implementing a switch-like functionality. Each case is implemented as an elif block, with a final else block to handle any remaining cases:
def my_function(x): if x == "case1": #do something elif x == "case2": #do something else: #do something
def case1(): #do something def case2(): #do something def default(): #do something cases = { "case1": case1, "case2": case2 } def my_function(x): func = cases.get(x, default) func()3. Using a dictionary of lambda functions: This is similar to the above method, but uses lambda functions instead of named functions:
cases = { "case1": lambda: #do something, "case2": lambda: #do something } def my_function(x): func = cases.get(x, lambda: #do something) func()
cases = [ ("case1", case1), ("case2", case2) ] def my_function(x): for case, func in cases: if x == case: func() break else: #do something
from functools import dispatch @dispatch(int) def my_function(x): #do something @dispatch(str) def my_function(x): #do something
Python Mega Course: Learn Python in 60 Days, Build 20 Apps
Learn Python on Udemy completely in 60 days or less by building 20 real-world applications from web development to data science.