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 相关文章推荐
SQLite3中文编码 Python的实现
Jan 11 Python
python字符串str和字节数组相互转化方法
Mar 18 Python
Python Numpy 数组的初始化和基本操作
Mar 13 Python
Python实现合并同一个文件夹下所有txt文件的方法示例
Apr 26 Python
mvc框架打造笔记之wsgi协议的优缺点以及接口实现
Aug 01 Python
Python闭包思想与用法浅析
Dec 27 Python
python3 求约数的实例
Dec 05 Python
python 实现查询Neo4j多节点的多层关系
Dec 23 Python
浅谈Python的方法解析顺序(MRO)
Mar 05 Python
Python爬虫谷歌Chrome F12抓包过程原理解析
Jun 04 Python
Python logging模块异步线程写日志实现过程解析
Jun 30 Python
matplotlib如何设置坐标轴刻度的个数及标签的方法总结
Jun 11 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
PHP 飞信好友免费短信API接口开源版
2010/07/22 PHP
解析thinkphp中的M()与D()方法的区别
2013/06/22 PHP
php使用正则表达式提取字符串中尖括号、小括号、中括号、大括号中的字符串
2020/04/05 PHP
php用户密码加密算法分析【Discuz加密算法】
2016/10/12 PHP
PHP内置加密函数详解
2016/11/20 PHP
详解php命令注入攻击
2019/04/06 PHP
php变量与字符串的增删改查操作示例
2020/05/07 PHP
php框架CI(codeigniter)自动加载与自主创建对象操作实例分析
2020/06/06 PHP
jWiard 基于JQuery的强大的向导控件介绍
2011/10/28 Javascript
鼠标滚轮控制网页横向移动实现思路
2013/03/22 Javascript
js报$ is not a function 的问题的解决方法
2014/01/20 Javascript
javascript不同类型数据之间的运算的转换方法
2014/02/13 Javascript
js实现加载更多功能实例
2016/10/27 Javascript
BootStrap 导航条实例代码
2017/05/18 Javascript
基于input框覆盖掉数字英文的实例讲解
2017/07/21 Javascript
ReactNative中使用Redux架构总结
2017/12/15 Javascript
js生成word中图片处理方法
2018/01/06 Javascript
使用webpack打包后的vue项目如何正确运行(express)
2018/10/26 Javascript
浅谈layui 数据表格前后台传值的问题
2019/09/12 Javascript
javascript中innerHTML 获取或替换html内容的实现代码
2020/03/17 Javascript
Vue 基于 vuedraggable 实现选中、拖拽、排序效果
2020/05/18 Javascript
[02:08]DOTA2英雄基础教程 马格纳斯
2014/01/17 DOTA
[46:50]Liquid vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
[54:17]DOTA2-DPC中国联赛定级赛 RNG vs iG BO3第二场 1月10日
2021/03/11 DOTA
利用Python爬取微博数据生成词云图片实例代码
2017/08/31 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
2017/12/14 Python
浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器
2019/03/11 Python
python GUI库图形界面开发之PyQt5输入对话框QInputDialog详细使用方法与实例
2020/02/27 Python
python实现批量命名照片
2020/06/18 Python
HTML5 canvas标签实现刮刮卡效果
2015/04/24 HTML / CSS
新加坡时尚网上购物:Zalora新加坡
2016/07/26 全球购物
有趣的睡衣和礼物:LazyOne
2019/11/27 全球购物
服务员岗位职责
2014/01/29 职场文书
物流管理专业毕业生求职信
2014/03/23 职场文书
中秋晚会策划方案
2014/06/12 职场文书
Python matplotlib绘制雷达图
2022/04/13 Python