Python中实现switch功能实例解析


Posted in Python onJanuary 11, 2018

前言

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

正文

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

1.简单的if-else

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

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

 2.使用字典

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

#!/usr/bin/env python
usercmd = raw_input("please input your choice:\n")
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 python
usrcmd = raw_input("please input your choice:\n")
dic = {'select': lambda : "select action",
  'update': lambda : "update action",
  'delete': lambda : "delete action",
  'insert': lambda : "insert action"}
print cho[usr_cmd]()

总结

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

Python 相关文章推荐
Python简单实现子网掩码转换的方法
Apr 13 Python
Python抓取聚划算商品分析页面获取商品信息并以XML格式保存到本地
Feb 23 Python
python 递归深度优先搜索与广度优先搜索算法模拟实现
Oct 22 Python
django开发post接口简单案例,获取参数值的方法
Dec 11 Python
pandas读取csv文件,分隔符参数sep的实例
Dec 12 Python
对python 多线程中的守护线程与join的用法详解
Feb 18 Python
PyCharm 创建指定版本的 Django(超详图解教程)
Jun 18 Python
python实现在cmd窗口显示彩色文字
Jun 24 Python
cProfile Python性能分析工具使用详解
Jul 22 Python
pytorch 使用单个GPU与多个GPU进行训练与测试的方法
Aug 19 Python
详解python itertools功能
Feb 07 Python
Django启动时找不到mysqlclient问题解决方案
Nov 11 Python
Python中getpass模块无回显输入源码解析
Jan 11 #Python
python版微信跳一跳游戏辅助
Jan 11 #Python
微信跳一跳python辅助脚本(总结)
Jan 11 #Python
Python用sndhdr模块识别音频格式详解
Jan 11 #Python
Python用imghdr模块识别图片格式实例解析
Jan 11 #Python
Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能
Jan 11 #Python
Python基于ThreadingTCPServer创建多线程代理的方法示例
Jan 11 #Python
You might like
用PHP与XML联手进行网站编程代码实例
2008/07/10 PHP
simplehtmldom Doc api帮助文档
2012/03/26 PHP
php ZipArchive压缩函数详解实例
2013/11/06 PHP
PHP文件操作方法汇总
2015/07/01 PHP
用php定义一个数组最简单的方法
2019/10/04 PHP
js如何获取object类型里的键值
2014/02/18 Javascript
js创建一个input数组并绑定click事件的方法
2014/06/12 Javascript
jQuery获取节点和子节点文本的方法
2014/07/22 Javascript
JS+CSS实现的蓝色table选项卡效果
2015/10/08 Javascript
jquery实现两边飘浮可关闭的对联广告
2015/11/27 Javascript
Jquery操作Ajax方法小结
2015/11/29 Javascript
Ajax与服务器(JSON)通信实例代码
2016/11/05 Javascript
JS中append字符串包含onclick无效传递参数失败的解决方案
2016/12/26 Javascript
提高Web性能的前端优化技巧总结
2017/02/27 Javascript
JavaScript原生数组Array常用方法
2017/04/06 Javascript
vue学习笔记之vue1.0和vue2.0的区别介绍
2017/05/17 Javascript
JavaScript定义函数的三种实现方法
2017/09/23 Javascript
详解Vue底部导航栏组件
2019/05/02 Javascript
JavaScript中Dom操作实例详解
2019/07/08 Javascript
vue+webpack 更换主题N种方案优劣分析
2019/10/28 Javascript
js滚轮事件 js自定义滚动条的实现
2020/01/18 Javascript
浅谈webpack和webpack-cli模块源码分析
2020/01/19 Javascript
[47:03]完美世界DOTA2联赛PWL S3 Galaxy Racer vs Phoenix 第二场 12.10
2020/12/13 DOTA
Python新手入门最容易犯的错误总结
2017/04/24 Python
在java中如何定义一个抽象属性示例详解
2017/08/18 Python
Python基于回溯法子集树模板解决旅行商问题(TSP)实例
2017/09/05 Python
Python基础教程之内置函数locals()和globals()用法分析
2018/03/16 Python
pymysql的简单封装代码实例
2020/01/08 Python
html5绘制时钟动画
2014/12/15 HTML / CSS
法国创作个性化T恤衫和其他定制产品平台:Tostadora
2018/04/08 全球购物
三星新西兰官网:Samsung新西兰
2019/03/05 全球购物
企业文化建设实施方案
2014/03/22 职场文书
机械专业技术员求职信
2014/06/14 职场文书
金融专业银行实习证明模板
2014/11/28 职场文书
《一面五星红旗》教学反思
2016/02/23 职场文书
JVM钩子函数的使用场景详解
2021/08/23 Java/Android