掌握Python的多方式分支——switch case 实现详解

🍀 前言

博客地址:

👋 简介

在 Python 编程语言中,没有内置的 switch case 功能。switch case 是一种常见的编程结构,它可以根据不同的条件值执行不同的代码块。然而,在 Python 中,我们不能直接使用 switch case 结构来实现这种功能。在本文中,我们将探讨如何在Python中实现switch语句。

📖 正文

1 使用if-elif-else实现

def switch(choice):
    if choice == 'a':
        print("Case: A")
    elif choice == 'b':
        print("Case: B")
    elif choice == 'c':
        print("Case: C")
    else:
        print("default Case")


switch('a')
switch(1)

# Case: A
# default Case

2 使用字典实现

def switch(case):
    cases = {
        'a': 'Case A',
        'b': 'Case B',
        'c': 'Case C'
    }
    return cases.get(case, 'default Case')


result = switch('b')
print(result)  
# 输出:Case B
result = switch('v')
print(result)  
# default Case

3 使用函数映射

def case_a():
    return 'Case A'


def case_b():
    return 'Case B'


def case_c():
    return 'Case C'


def switch(case):
    cases = {
        'a': case_a,
        'b': case_b,
        'c': case_c
    }
    return cases.get(case, lambda: 'default Case')()


result = switch('b')
print(result)  
# 输出:Case B

4 使用match语句

match语句是python3.10版本的新特性,如果使用match,需要保证python的版本不低于3.10

def switch(choice):
    match choice:
        case 'a':
            print("Case A")
        case 'b':
            print("Case B")
        case 'c':
            print("Case C")
        case _:
            print("default Case")


switch('b')
# 输出:Case B

✏ 总结

尽管Python没有内置的switch语句,我们同样可以通过if语句或字典的方式来实现switch语句的功能。虽然使用字典实现switch语句的代码简单易读,但可能在条件数量较大的时候出现性能问题。使用if语句实现switch语句的代码相对冗长,但是实现的逻辑更加明确,使用的条件也更加广泛。所以在开发的时候,根据实际使用的场景来选择适合的方式。

💖 欢迎关注我的公众号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值