Python does not have a built-in switch case statement like some other programming languages, but there are a few ways to achieve similar functionality. Here are a few options:
- Using if-elif statements:
One way to implement a switch case statement in Python is to use a series of if-elif statements. Here's an example:
def switch_case(argument):
if argument == 'a':
print("You chose a")
elif argument == 'b':
print("You chose b")
elif argument == 'c':
print("You chose c")
else:
print("Invalid choice")
- Using a dictionary:
Another option is to use a dictionary to map the cases to corresponding functions or values. Here's an example:
def case_a():
print("You chose a")
def case_b():
print("You chose b")
def case_c():
print("You chose c")
def default_case():
print("Invalid choice")
cases = {
'a': case_a,
'b': case_b,
'c': case_c,
'default': default_case
}
def switch_case(argument):
cases.get(argument, cases['default'])()
In this example, the cases dictionary maps the cases to corresponding functions. The switch_case function uses the get method of the dictionary to retrieve the appropriate function based on the value of argument, and calls it using parentheses ().
- Using the match statement:
Starting from Python 3.10, you can use the match statement to write switch-case-like code. The match statement is a more powerful and flexible version of the switch-case statement. Here's an example:
def switch_case(argument):
match argument:
case 'a':
print("You chose a")
case 'b':
print("You chose b")
case 'c':
print("You chose c")
case _:
print("Invalid choice")
In this example, the match statement matches the value of argument with the cases and executes the corresponding code block. The underscore _ is used as the default case.