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从入门到精通(DAY 1)
Dec 20 Python
python下载图片实现方法(超简单)
Jul 21 Python
python编写分类决策树的代码
Dec 21 Python
对python使用http、https代理的实例讲解
May 07 Python
利用Anaconda简单安装scrapy框架的方法
Jun 13 Python
浅析python3中的os.path.dirname(__file__)的使用
Aug 30 Python
Python 操作 PostgreSQL 数据库示例【连接、增删改查等】
Apr 21 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
Sep 29 Python
python map比for循环快在哪
Sep 21 Python
Python Unittest原理及基本使用方法
Nov 06 Python
python中使用.py配置文件的方法详解
Nov 23 Python
python 合并多个excel中同名的sheet
Jan 22 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
我常用的几个类
2006/10/09 PHP
PHP中PDO基础教程 入门级
2011/09/04 PHP
如何在smarty中增加类似foreach的功能自动加载数据
2013/06/26 PHP
php数组查找函数in_array()、array_search()、array_key_exists()使用实例
2014/04/29 PHP
PHP实现从远程下载文件的方法
2015/03/12 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
2019/12/18 PHP
onkeyup,onkeydown和onkeypress的区别介绍
2013/10/21 Javascript
JQuery实现倒计时按钮具体方法
2013/11/14 Javascript
jquery 获取dom固定元素 添加样式的简单实例
2014/02/04 Javascript
jQuery给多个不同元素添加class样式的方法
2015/03/26 Javascript
jQuery可见性过滤器:hidden和:visibility用法实例
2015/06/24 Javascript
jquery实现仿新浪微博带动画效果弹出层代码(可关闭、可拖动)
2015/10/12 Javascript
java必学必会之static关键字
2015/12/03 Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
2016/11/10 Javascript
浅谈regExp的test方法取得的值变化的原因及处理方法
2017/03/01 Javascript
Vue项目中最新用到的一些实用小技巧
2018/11/06 Javascript
jquery轮播图插件使用方法详解
2020/07/31 jQuery
基于Vue+Webpack拆分路由文件实现管理
2020/11/16 Javascript
[04:56]经典回顾:前Ehome 与 前LGD
2015/02/26 DOTA
Python编写检测数据库SA用户的方法
2014/07/11 Python
在Python中使用全局日志时需要注意的问题
2015/05/06 Python
python f-string式格式化听语音流程讲解
2019/06/18 Python
python实现多线程端口扫描
2019/08/31 Python
numpy.transpose()实现数组的转置例子
2019/12/02 Python
python实现数据结构中双向循环链表操作的示例
2020/10/09 Python
香港钟表珠宝首饰商城:OneMallTime网摩间
2016/10/14 全球购物
诺心蛋糕官网:LE CAKE
2018/08/25 全球购物
大学生农村教师实习自我鉴定
2013/09/21 职场文书
本科毕业生的求职信范文
2013/11/20 职场文书
医院学雷锋活动策划方案
2014/02/15 职场文书
行政内勤岗位职责
2014/04/07 职场文书
离职证明标准格式
2014/09/15 职场文书
质检员岗位职责范本
2015/04/07 职场文书
领导干部失职检讨书
2015/05/05 职场文书
何时使用Map来代替普通的JS对象
2021/04/29 Javascript
MySQL七种JOIN类型小结
2021/10/24 MySQL