Python中有没有Switch语句?

Python中有没有switch语句呢?
当然是没有的。那么怎样实现类似于swith语句的逻辑呢?

可以借助dict来实现,实际上使用if语句也是可以的,我们可以看如下代码:

"""
I would like to implement following logic:
switch x:
    case 'a':
        y = 1
        break
    case 'b':
        y = 2
        break
    case 'c':
        y = 3
        break
"""

def if_function(x):
    y = 0
    if x == 'a':
        y = 1
    elif x == 'b':
        y = 2
    elif x == 'c':
        y = 3

    return y

def switch_function(x):
    y = {
        'a' : 1,
        'b' : 2,
        'c' : 3
    }.get(x, 0)
    return y

其实为什么不用if呢?

发表评论

电子邮件地址不会被公开。 必填项已用*标注

15 − = 14