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 Web框架Flask中使用七牛云存储实例
Feb 08 Python
详解Swift中属性的声明与作用
Jun 30 Python
使用Python写CUDA程序的方法
Mar 27 Python
windows 下python+numpy安装实用教程
Dec 23 Python
python之验证码生成(gvcode与captcha)
Jan 02 Python
用Pycharm实现鼠标滚轮控制字体大小的方法
Jan 15 Python
python实现的发邮件功能示例
Sep 11 Python
jupyter lab的目录调整及设置默认浏览器为chrome的方法
Apr 10 Python
tensorflow常用函数API介绍
Apr 19 Python
Tensorflow安装问题: Could not find a version that satisfies the requirement tensorflow
Apr 20 Python
python数据库批量插入数据的实现(executemany的使用)
Apr 30 Python
使用python将HTML转换为PDF pdfkit包(wkhtmltopdf) 的使用方法
Apr 21 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分割合并两个字符串的函数实例
2015/06/19 PHP
[原创]解决wincache不支持64位PHP5.5/5.6的问题(提供64位wincache下载)
2016/06/22 PHP
php强制下载文件函数
2016/08/24 PHP
完美解决phpexcel导出到xls文件出现乱码的问题
2016/10/29 PHP
jquery focus(fn),blur(fn)方法实例代码
2011/12/16 Javascript
document.createElement()用法及注意事项(ff下不兼容)
2013/03/13 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
JavaScript操作class和style样式代码详解
2016/02/13 Javascript
JavaScript实现类似淘宝的购物车效果
2017/03/16 Javascript
详解JS浏览器事件循环机制
2019/03/27 Javascript
浅谈JS中几种轻松处理'this'指向方式
2019/09/16 Javascript
关于vue路由缓存清除在main.js中的设置
2019/11/06 Javascript
在antd Form表单中select设置初始值操作
2020/11/02 Javascript
Python实现将n个点均匀地分布在球面上的方法
2015/03/12 Python
如何用Python合并lmdb文件
2018/07/02 Python
解决python 无法加载downsample模型的问题
2018/10/25 Python
Django Rest framework之权限的实现示例
2018/12/17 Python
Python3 单行多行万能正则匹配方法
2019/01/07 Python
Django结合ajax进行页面实时更新的例子
2019/08/12 Python
Django 构建模板form表单的两种方法
2020/06/14 Python
基于Python组装jmx并调用JMeter实现压力测试
2020/11/03 Python
Html5让容器充满屏幕高度或自适应剩余高度的布局实现
2020/05/14 HTML / CSS
GIVENCHY纪梵希官方旗舰店:高定彩妆与贵族护肤品
2018/04/16 全球购物
中间件的定义
2016/08/09 面试题
项目经理岗位职责
2013/11/11 职场文书
公司门卫管理制度
2014/02/01 职场文书
优秀毕业生自我鉴定
2014/02/11 职场文书
《陈涉世家》教学反思
2014/04/12 职场文书
2014入党积极分子破除“四风”思想汇报
2014/09/14 职场文书
教师自查自纠工作情况报告
2014/10/29 职场文书
一年级数学上册复习计划
2015/01/17 职场文书
外贸业务员岗位职责
2015/02/13 职场文书
青年联谊会致辞
2015/07/31 职场文书
2016年学习贯彻十八届五中全会精神心得体会
2016/01/05 职场文书
ipad隐藏软件app图标方法
2022/04/19 数码科技
使用compose函数优化代码提高可读性及扩展性
2022/06/16 Javascript