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解释器理解Python中的字节码
Apr 01 Python
Python2.x和3.x下maketrans与translate函数使用上的不同
Apr 13 Python
详解appium+python 启动一个app步骤
Dec 20 Python
python for循环输入一个矩阵的实例
Nov 14 Python
python对常见数据类型的遍历解析
Aug 27 Python
将python包发布到PyPI和制作whl文件方式
Dec 25 Python
Django实现将views.py中的数据传递到前端html页面,并展示
Mar 16 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
May 13 Python
详解python方法之绑定方法与非绑定方法
Aug 17 Python
彻底搞懂python 迭代器和生成器
Sep 07 Python
python 实现图片批量压缩的示例
Dec 18 Python
pycharm 使用anaconda为默认环境的操作
Feb 05 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中使用数组指针函数操作数组示例
2014/11/19 PHP
php中convert_uuencode()与convert_uuencode函数用法实例
2014/11/22 PHP
PHP使用pear实现mail发送功能 windows环境下配置pear
2016/04/15 PHP
php判断手机浏览还是web浏览,并执行相应的动作简单实例
2016/07/28 PHP
让getElementsByName适应IE和firefox的方法
2007/09/24 Javascript
javascript instanceof 内部机制探析
2010/10/15 Javascript
用XMLDOM和ADODB.Stream实现base64编码解码实现代码
2010/11/28 Javascript
jQuery拖动图片删除示例
2013/05/10 Javascript
JS批量操作CSS属性详细解析
2013/12/16 Javascript
Javascript中setTimeOut和setInterval的定时器用法
2015/06/12 Javascript
javascript运动详解
2015/07/06 Javascript
微信JSSDK上传图片
2015/08/23 Javascript
JavaScript数组的一些奇葩行为
2016/01/25 Javascript
Javascript 制作图形验证码实例详解
2016/12/22 Javascript
js实现简单的计算器功能
2017/01/16 Javascript
Node.js实现文件上传的示例
2017/06/28 Javascript
vue生命周期的探索
2019/04/03 Javascript
[03:41]2018完美盛典-《Fight With Us》
2018/12/16 DOTA
Python3的介绍、安装和命令行的认识(推荐)
2018/10/20 Python
django 文件上传功能的相关实例代码(简单易懂)
2020/01/22 Python
新手入门学习python Numpy基础操作
2020/03/02 Python
Python应用实现双指数函数及拟合代码实例
2020/06/19 Python
Keras 在fit_generator训练方式中加入图像random_crop操作
2020/07/03 Python
利用python 下载bilibili视频
2020/11/13 Python
Kipling澳洲官网:购买凯浦林包包
2020/12/17 全球购物
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?
2016/08/18 面试题
工厂厂长的职责
2013/12/12 职场文书
城南旧事观后感
2015/06/11 职场文书
装修公司管理制度
2015/08/05 职场文书
特种设备安全管理制度
2015/08/06 职场文书
2015中秋祝酒词
2015/08/12 职场文书
《围炉夜话》110句人生箴言,精辟有内涵,引人深思
2019/10/23 职场文书
Python爬虫数据的分类及json数据使用小结
2021/03/29 Python
MySQL子查询中order by不生效问题的解决方法
2021/08/02 MySQL
2022年四月新番
2022/03/15 日漫
Windows Server 2012 R2服务器安装与配置的完整步骤
2022/07/15 Servers