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高并发异步服务器核心库forkcore使用方法
Nov 26 Python
python实现TCP服务器端与客户端的方法详解
Apr 30 Python
python动态加载包的方法小结
Apr 18 Python
Python科学计算之Pandas详解
Jan 15 Python
JPype实现在python中调用JAVA的实例
Jul 19 Python
用Django实现一个可运行的区块链应用
Mar 08 Python
python查询mysql,返回json的实例
Mar 26 Python
浅谈django的render函数的参数问题
Oct 16 Python
Django渲染Markdown文章目录的方法示例
Jan 02 Python
python占位符输入方式实例
May 27 Python
Django中日期时间型字段进行年月日时分秒分组统计
Nov 27 Python
Python基础之hashlib模块详解
May 06 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
ASP和PHP都是可以删除自身的
2007/04/09 PHP
PHP 七大优势分析
2009/06/23 PHP
PHP Web木马扫描器代码分享
2015/09/06 PHP
php curl批处理实现可控并发异步操作示例
2018/05/09 PHP
PDO::query讲解
2019/01/29 PHP
PHP registerXPathNamespace()函数讲解
2019/02/03 PHP
PHP下载大文件失败并限制下载速度的实例代码
2019/05/10 PHP
PHP数组array类常见操作示例
2020/05/15 PHP
laravel开发环境homestead搭建过程详解
2020/07/03 PHP
javaScript 简单验证代码(用户名,密码,邮箱)
2009/09/28 Javascript
分享14个很酷的jQuery导航菜单插件
2011/04/25 Javascript
鼠标焦点离开文本框时验证的js代码
2013/07/19 Javascript
js离开或刷新页面检测(且兼容FF,IE,Chrome)
2014/03/05 Javascript
使用Raygun对Node.js应用进行错误处理的方法
2015/06/23 Javascript
图解Javascript——作用域、作用域链、闭包
2017/03/21 Javascript
原生Aajax 和jQuery Ajax 写法个人总结
2017/03/24 jQuery
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
Vue-cli创建项目从单页面到多页面的方法
2017/09/20 Javascript
Vue实现todolist删除功能
2018/06/26 Javascript
jquery层次选择器的介绍
2019/01/18 jQuery
WebStorm中如何将自己的代码上传到github示例详解
2020/10/28 Javascript
Python中的rjust()方法使用详解
2015/05/19 Python
解决pycharm运行出错,代码正确结果不显示的问题
2018/11/30 Python
Python命名空间namespace及作用域原理解析
2020/06/05 Python
PyInstaller运行原理及常用操作详解
2020/06/13 Python
python GUI模拟实现计算器
2020/06/22 Python
python 星号(*)的多种用途
2020/09/21 Python
线程的基本概念、线程的基本状态以及状态之间的关系
2012/10/26 面试题
总经理岗位职责描述
2014/02/08 职场文书
工程质量月活动方案
2014/02/19 职场文书
《白鹅》教学反思
2014/04/13 职场文书
离婚协议书范本2014
2014/10/27 职场文书
2015年度学校卫生工作总结
2015/05/12 职场文书
贷款收入证明范本
2015/06/12 职场文书
告知书格式
2015/07/01 职场文书
小学语文教学随笔
2015/08/14 职场文书