Python中实现switch功能实例解析

时间:2021-05-22

前言

今天在学习python的过程中,发现python没有switch这个语法。于是就想在python中如何才能实现这个功能呢?

正文

本文中我们对switch的使用模拟为正常的数据库的增删改查操作的对应,如'select
对应'select action'等。

1.简单的if-else

正如我们所知,python中有if语句,而且当时学习C的时候,学到if-else时引出的的替代品就是switch,两者可以完美的互相替代,需要注意的是在python中else if简化成了elif。如下所示:

#!/usr/bin/env pythonuser_cmd = raw_input(&quot;please input your choice:\n&quot;)if usercmd == &quot;select&quot; ops = &quot;select action&quot; elif usercmd == &quot;update&quot; ops = &quot;update action&quot; elif usercmd == &quot;delete&quot; ops = &quot;delete action&quot; elif usercmd == &quot;insert&quot; ops = &quot;insert action&quot; else ops = &quot;invalid choice!&quot;print ops`</pre>

2.使用字典

这里我们使用到了字典的函数:dict.get(key, default=None)。key--字典中要查找的值,default--如果指定键的值不存在时,返回该默认值。如下所示:

#!/usr/bin/env pythonusercmd = raw_input(&quot;please input your choice:\n&quot;)dic = {'select':'select action','update':'update action','delete':'delete action','insert':'insert action'}defaultitem = 'invalid choice!'ops = dic.get(usercmd,defaultitem)print ops

3.使用lambda函数结合字典

lambda的一般形式是关键字lambda后面跟一个或多个参数,紧跟一个冒号,以后是一个表达式。lambda是一个表达式而不是一个语句。它能够出现在Python语法不允许def出现的地方,这里就不再多加描述。如下所示:

#!/usr/bin/env pythonusrcmd = raw_input(&quot;please input your choice:\n&quot;)dic = {'select': lambda : &quot;select action&quot;, 'update': lambda : &quot;update action&quot;, 'delete': lambda : &quot;delete action&quot;, 'insert': lambda : &quot;insert action&quot;}print cho[usr_cmd]()

总结

以上就是本文关于Python中实现switch功能实例解析的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章