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判断端口是否打开的实现代码
Feb 10 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
Oct 11 Python
python通过socket实现多个连接并实现ssh功能详解
Nov 08 Python
详解flask表单提交的两种方式
Jul 21 Python
Python基于mysql实现学生管理系统
Feb 21 Python
Python之pymysql的使用小结
Jul 01 Python
python字符串中匹配数字的正则表达式
Jul 03 Python
Python树莓派学习笔记之UDP传输视频帧操作详解
Nov 15 Python
Python读取YAML文件过程详解
Dec 30 Python
利用python对mysql表做全局模糊搜索并分页实例
Jul 12 Python
Python为何不支持switch语句原理详解
Oct 21 Python
python glom模块的使用简介
Apr 13 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
《心理测量者3》剧场版动画预告
2020/03/02 日漫
CI框架开发新浪微博登录接口源码完整版
2014/05/28 PHP
PHP中变量引用与变量销毁机制分析
2014/11/15 PHP
thinkPHP5框架实现基于ajax的分页功能示例
2018/06/12 PHP
用js实现下载远程文件并保存在本地的脚本
2008/05/06 Javascript
jquery实现鼠标滑过小图查看大图的方法
2015/07/20 Javascript
理解js对象继承的N种模式
2016/01/25 Javascript
论JavaScript模块化编程
2016/03/07 Javascript
深入理解js中的加载事件
2017/02/08 Javascript
js面向对象编程总结
2017/02/16 Javascript
详解Angular2响应式表单
2017/06/14 Javascript
JavaScript ES6中const、let与var的对比详解
2017/06/18 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
让bootstrap的carousel支持滑动滚屏的实现代码
2017/11/27 Javascript
jQuery实现点击DIV同时点击CheckBox,并为DIV上背景色的实例
2017/12/18 jQuery
vue仿element实现分页器效果
2018/09/13 Javascript
使用jQuery实现购物车
2020/10/29 jQuery
JavaScript实现商品评价五星好评
2020/11/30 Javascript
Python ValueError: invalid literal for int() with base 10 实用解决方法
2015/06/21 Python
python保存文件方法小结
2018/07/27 Python
解决Python内层for循环如何break出外层的循环的问题
2019/06/24 Python
tensorflow 2.0模式下训练的模型转成 tf1.x 版本的pb模型实例
2020/06/22 Python
PyQt5的QWebEngineView使用示例
2020/10/20 Python
在Pycharm中安装Pandas库方法(简单易懂)
2021/02/20 Python
Blancsom美国/加拿大:服装和生活用品供应商
2018/07/27 全球购物
移动通信专业自荐信范文
2013/11/12 职场文书
创业计划书——互联网商机
2014/01/12 职场文书
销售主管岗位职责
2014/02/08 职场文书
《掌声》教学反思
2014/02/23 职场文书
法人授权委托书范本
2014/04/04 职场文书
工商行政管理专业求职书
2014/05/23 职场文书
岗位职责说明书模板
2014/07/30 职场文书
嘉宾邀请函
2015/01/31 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
员工工作心得体会
2019/05/07 职场文书
iPhone13再次曝光
2021/04/15 数码科技