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 相关文章推荐
node.js获取参数的常用方法(总结)
May 29 Python
python实现简易云音乐播放器
Jan 04 Python
Python3实现的简单验证码识别功能示例
May 02 Python
numpy使用fromstring创建矩阵的实例
Jun 15 Python
Flask-Mail用法实例分析
Jul 21 Python
Python网页正文转换语音文件的操作方法
Dec 09 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
Aug 05 Python
Python MySQLdb 执行sql语句时的参数传递方式
Mar 04 Python
iPython pylab模式启动方式
Apr 24 Python
超级实用的8个Python列表技巧
Aug 24 Python
python如何获取网络数据
Apr 11 Python
如何判断pytorch是否支持GPU加速
Jun 01 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版(3)
2006/10/09 PHP
新浪微博OAuth认证和储存的主要过程详解
2015/03/27 PHP
php实现 master-worker 守护多进程模式的实例代码
2019/07/20 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
JavaScript 创建对象
2009/07/17 Javascript
20行代码实现的一个CSS覆盖率测试脚本
2013/07/07 Javascript
jQuery lazyLoad图片延迟加载插件的优化改造方法分享
2013/08/13 Javascript
jQuery实现带渐显效果的人物多级关系图代码
2015/10/16 Javascript
基于JavaScript代码实现微信扫一扫下载APP
2015/12/30 Javascript
AngularJS入门教程之Cookies读写操作示例
2016/11/02 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
js模拟百度模糊搜索的实例
2017/08/04 Javascript
简单的Vue SSR的示例代码
2018/01/12 Javascript
vue click.stop阻止点击事件继续传播的方法
2018/09/04 Javascript
jQuery基于随机数解决中午吃什么去哪吃问题示例
2018/12/29 jQuery
微信小程序新闻网站详情页实例代码
2020/01/10 Javascript
微信小程序搜索框样式并实现跳转到搜索页面(小程序搜索功能)
2020/03/10 Javascript
vue使用video插件vue-video-player的示例
2020/10/03 Javascript
[01:18]一目了然!DOTA2DotA快捷操作对比第一弹
2014/07/01 DOTA
[49:02]KG vs Infamous 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
Python运维之获取系统CPU信息的实现方法
2018/06/11 Python
详解flask表单提交的两种方式
2018/07/21 Python
scrapy-redis源码分析之发送POST请求详解
2019/05/15 Python
django的分页器Paginator 从django中导入类
2019/07/25 Python
python3跳出一个循环的实例操作
2020/08/18 Python
浅析图片上传及canvas压缩的流程
2020/06/10 HTML / CSS
拉斯维加斯酒店、演出、旅游、俱乐部及更多:Vegas.com
2019/02/28 全球购物
法国体育用品商店:GO Sport
2019/10/23 全球购物
《草虫的村落》教学反思
2014/02/16 职场文书
课前三分钟演讲稿
2014/04/24 职场文书
3分钟演讲稿
2014/04/30 职场文书
公司运动会策划方案
2014/05/25 职场文书
售房协议书
2014/08/19 职场文书
小学数学教师研修日志
2015/11/13 职场文书
创业计划书之餐饮
2019/09/02 职场文书
讲解Python实例练习逆序输出字符串
2022/05/06 Python