Python分支结构(switch)操作简介


Posted in Python onJanuary 17, 2018

Python当中并无switch语句,本文研究的主要是通过字典实现switch语句的功能,具体如下。

switch语句用于编写多分支结构的程序,类似与if….elif….else语句。

switch语句表达的分支结构比if…elif…else语句表达的更清晰,代码的可读性更高

但是python并没有提供switch语句。

python可以通过字典实现switch语句的功能,实现方法分为两步:

首先,定义一个字典

其次,调用字典的get()获取相应的表达式。

计算器:

from __future__ import division
def jia(x,y):
 return x+y
def jian(x,y):
 return x-y
def cheng(x,y):
 return x*y
def chu(x,y):
 return x/y
def operator(x,o,y):
 if o=='+':
  print (jia(x,y))
 elif o=='-':
  print (jian(x,y))
 elif o=='*':
  print (cheng(x,y))
 elif o=='/':
  print (chu(x,y))
 else:
  pass
operator(2,'/',4)

用字典来实现switch操作

from __future__ import division
def jia(x,y):
 return x+y
def jian(x,y):
 return x-y
def cheng(x,y):
 return x*y
def chu(x,y):
 return x/y
operator={"+":jia,"-":jian,"*":cheng,"/":chu}
print(operator["+"](3,2)) #operator["+"]等同于jia
print (jia(3,2)) #operator["+"](3,2)等同于jia(3,2)

运行结果:
5
5

from __future__ import division
def jia(x,y):
 return x+y
def jian(x,y):
 return x-y
def cheng(x,y):
 return x*y
def chu(x,y):
 return x/y
operator={"+":jia,"-":jian,"*":cheng,"/":chu}
def f(x,o,y):
 p=operator.get(o)(x,y)
 print(p)
f(15,'/',5)

总结

以上就是本文关于Python分支结构(switch)操作简介的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
树莓派中python获取GY-85九轴模块信息示例
Dec 05 Python
提升Python程序运行效率的6个方法
Mar 31 Python
Python环境下安装使用异步任务队列包Celery的基础教程
May 07 Python
Python实现多态、协议和鸭子类型的代码详解
May 05 Python
python如何爬取网站数据并进行数据可视化
Jul 08 Python
numpy ndarray 按条件筛选数组,关联筛选的例子
Nov 26 Python
python中property和setter装饰器用法
Dec 19 Python
TensorFlow命名空间和TensorBoard图节点实例
Jan 23 Python
pycharm通过anaconda安装pyqt5的教程
Mar 24 Python
利用4行Python代码监测每一行程序的运行时间和空间消耗
Apr 22 Python
Pycharm如何导入python文件及解决报错问题
May 10 Python
Elasticsearch 批量操作
Apr 19 Python
python2 与python3的print区别小结
Jan 16 #Python
python正则中最短匹配实现代码
Jan 16 #Python
Python程序员面试题 你必须提前准备!
Jan 16 #Python
详解python使用递归、尾递归、循环三种方式实现斐波那契数列
Jan 16 #Python
Python+tkinter模拟“记住我”自动登录实例代码
Jan 16 #Python
Python利用字典将两个通讯录文本合并为一个文本实例
Jan 16 #Python
Python爬虫爬取一个网页上的图片地址实例代码
Jan 16 #Python
You might like
PHPShop存在多个安全漏洞
2006/10/09 PHP
php cURL和Rolling cURL并发方式比较
2013/10/30 PHP
PHP中ini_set与ini_get用法实例
2014/11/04 PHP
php数组比较实现查找连续数的方法
2015/07/29 PHP
PHP实现多维数组转字符串和多维数组转一维数组的方法
2015/08/08 PHP
深入理解PHP中的empty和isset函数
2016/05/26 PHP
PHP使用HTML5 FormData对象提交表单操作示例
2019/07/02 PHP
PHP vsprintf()函数格式化字符串操作原理解析
2020/07/14 PHP
[原创]后缀就扩展名为js的文件是什么文件
2007/12/06 Javascript
jQuery对表单的操作代码集合
2011/04/06 Javascript
用JS判别浏览器种类以及IE版本的几种方法小结
2011/08/02 Javascript
解决js正则匹配换行问题实现代码
2012/12/10 Javascript
基于JavaScript的操作系统你听说过吗?
2016/01/28 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
jQuery事件绑定on()与弹窗实现代码
2016/04/28 Javascript
JavaScript遍历Json串浏览器输出的结果不统一问题
2016/11/03 Javascript
Bootstrap栅格系统学习笔记
2016/11/25 Javascript
为你的微信小程序体积瘦身详解
2017/05/20 Javascript
bootstrap选项卡扩展功能详解
2017/06/14 Javascript
Nodejs libuv运行原理详解
2019/08/21 NodeJs
Vue组件模板的几种书写形式(3种)
2020/02/19 Javascript
[52:20]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
django批量导入xml数据
2016/10/16 Python
python实现在IDLE中输入多行的方法
2018/04/19 Python
Python----数据预处理代码实例
2019/03/20 Python
OpenCV搞定腾讯滑块验证码的实现代码
2019/05/18 Python
PyQt使用QPropertyAnimation开发简单动画
2020/04/02 Python
宝塔面板出现“open_basedir restriction in effect. ”的解决方法
2021/03/14 PHP
介绍一下Cookie和Session及他们之间的区别
2012/11/20 面试题
字符串str除首尾字符外的其他字符按升序排列
2013/03/08 面试题
触发器(trigger)的功能都有哪些?写出一个触发器的例子
2012/09/17 面试题
24岁生日感言
2014/01/13 职场文书
外贸采购员岗位职责
2014/03/08 职场文书
委托书模板
2014/04/04 职场文书
普通党员个人整改措施
2014/10/27 职场文书
浅谈Redis在直播场景的实践方案
2021/04/27 Redis