为了账号安全,请及时绑定邮箱和手机立即绑定

case / switch语句的Python等价物是什么?

case / switch语句的Python等价物是什么?

qq_遁去的一_1 2019-08-24 14:55:14
case / switch语句的Python等价物是什么?我想知道,是否有一个Python等效的case语句,如VB.net或C#上提供的示例?
查看完整描述

2 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

直接替换是ifelifelse

但是,在许多情况下,有更好的方法在Python中执行此操作。


查看完整回答
反对 回复 2019-08-24
?
森栏

TA贡献1810条经验 获得超5个赞

虽然官方文档很乐意不提供切换,但我看到了使用词典解决方案

例如:

# define the function blocksdef zero():
    print "You typed zero.\n"def sqr():
    print "n is a perfect square\n"def even():
    print "n is an even number\n"def prime():
    print "n is a prime number\n"# map the inputs to the function blocksoptions = {0 : zero,
           1 : sqr,
           4 : sqr,
           9 : sqr,
           2 : even,
           3 : prime,
           5 : prime,
           7 : prime,}

然后调用等效的开关块:

options[num]()

如果你严重依赖于跌倒,这就开始分崩离析了。


查看完整回答
反对 回复 2019-08-24
  • 2 回答
  • 0 关注
  • 350 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信