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中文编码问题小结
Sep 28 Python
Python中字典的基本知识初步介绍
May 21 Python
Python实现数通设备端口使用情况监控实例
Jul 15 Python
Python入门_浅谈数据结构的4种基本类型
May 16 Python
Python实现注册登录系统
Aug 08 Python
python提取包含关键字的整行数据方法
Dec 11 Python
python实现输出一个序列的所有子序列示例
Nov 18 Python
python实现在线翻译
Jun 18 Python
Python爬虫设置ip代理过程解析
Jul 20 Python
python用Tkinter做自己的中文代码编辑器
Sep 07 Python
python实现AHP算法的方法实例(层次分析法)
Sep 09 Python
python GUI计算器的实现
Oct 09 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
coreseek 搜索英文的问题详解
2013/06/08 PHP
总结PHP中DateTime的常用方法
2016/08/11 PHP
PHP 闭包详解及实例代码
2016/09/28 PHP
PHP7.3.10编译安装教程
2019/10/08 PHP
Thinkphp框架+Layui实现图片/文件上传功能分析
2020/02/07 PHP
PHP unset函数原理及使用方法解析
2020/08/14 PHP
基于Jquery插件开发之图片放大镜效果(仿淘宝)
2011/11/19 Javascript
JS画5角星方法介绍
2013/09/17 Javascript
二叉树先序遍历的非递归算法具体实现
2014/01/09 Javascript
JavaScript格式化日期时间的方法和自定义格式化函数示例
2014/04/04 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
JavaScript中停止执行setInterval和setTimeout事件的方法
2015/05/14 Javascript
jQuery zclip插件实现跨浏览器复制功能
2015/11/02 Javascript
javascript动态添加checkbox复选框的方法
2015/12/23 Javascript
JavaScript绑定事件监听函数的通用方法
2016/05/14 Javascript
将angular.js项目整合到.net mvc中的方法详解
2017/06/29 Javascript
Echarts之悬浮框中的数据排序问题
2018/11/08 Javascript
[04:11]DOTA2亚洲邀请赛小组赛第一日 TOP10精彩集锦
2015/01/30 DOTA
python实现批量获取指定文件夹下的所有文件的厂商信息
2014/09/28 Python
Python格式化压缩后的JS文件的方法
2015/03/05 Python
Window 64位下python3.6.2环境搭建图文教程
2018/09/19 Python
python对矩阵进行转置的2种处理方法
2019/07/17 Python
python中树与树的表示知识点总结
2019/09/14 Python
可视化pytorch 模型中不同BN层的running mean曲线实例
2020/06/24 Python
深入浅析Python代码规范性检测
2020/07/31 Python
利用SVG和CSS3来实现一个炫酷的边框动画
2015/07/22 HTML / CSS
模具专业推荐信
2013/10/30 职场文书
注塑工厂厂长岗位职责
2013/12/02 职场文书
函授毕业自我鉴定
2013/12/19 职场文书
旅游管理专业个人求职信范文
2013/12/24 职场文书
工厂实习感言
2014/01/14 职场文书
大学校务公开实施方案
2014/03/31 职场文书
大学新生军训自我鉴定
2014/09/18 职场文书
2014年业务工作总结
2014/11/17 职场文书
mybatis中注解与xml配置的对应关系和对比分析
2021/08/04 Java/Android
Win10加载疑难解答时出错发生意外错误的解决方法
2022/07/07 数码科技