python switch语句的多种实现方法
python switch语句的多种实现方法
说明:
- python中没有switch关键字
- 定义 字典
- 调用 字典的get(key)获取对应的表达式
1,实现switch的一般方式
from __future__ import division
def add(x, y) :
return x + y
def subtract(x, y) :
return x - y
def multiply(x, y) :
return x * y
def divide(x, y) :
return x / y
def calculate(x, y, symbol) :
if "+" == symbol :
print add(x, y)
elif "-" == symbol :
print subtract(x, y)
elif "*" == symbol :
print multiply(x, y)
elif "/" == symbol :
print divide(x, y)
else :
pass
calculate(1, 2, "+")
calculate(1, 2, "-")
calculate(1, 2, "*")
calculate(1, 2, "/")
2,字典实现switch语句
- value 为 函数
from __future__ import division
def add(x, y) :
return x + y
def subtract(x, y) :
return x - y
def multiply(x, y) :
return x * y
def divide(x, y) :
return x / y
calculateDict = {"+":add, "-":subtract, "*":multiply, "/":divide}
#print calculateDict["+"](1,2)
#print calculateDict.get("+")(1,2)
def calculate(x, y, symbol) :
print calculateDict.get(symbol)(x, y)
calculate(1, 2, "+")
calculate(1, 2, "-")
calculate(1, 2, "*")
calculate(1, 2, "/")
3,常用形式
from __future__ import division
def calculate(x, y, symbol) :
calculateDict = {
"+" : x + y ,
"-" : x - y ,
"*" : x * y ,
"/" : x / y
}
print calculateDict.get(symbol)
calculate(1, 2, "+")
calculate(1, 2, "-")
calculate(1, 2, "*")
calculate(1, 2, "/")
python switch语句的多种实现方法相关推荐
- c语言case多种情况,switch语句中有多种情况
有没有一种方法可以遍历多个case语句而不声明case value:重复? 我知道这可行: switch (value) { case 1: case 2: case 3: //do some stu ...
- python switch语句_几个Python里的骚操作
今天给大家分享几个Python里面的骚操作,大家会更加感受到Python编码的强大. 1.用字典映射代替switch case语句 大家首先看下面这段用C#编写的switch case代码,代码很好理 ...
- c程序设计语言克尼汉,《C程序设计语言(第2版新版)典藏版》 —3.4 switch语句...
3.4 switch语句 switch语句是一种多路判定语句,它测试表达式是否与一些常量整数值中的某一个值匹配,并执行相应的分支动作. switch(表达式){ case 常量表达式:语句序列 c ...
- python循环语句中的乘法_python循环语句详细讲解
想必大家都知道python循环语句吧,可以python循环语句有多种,比如for循环.while循环.if.else等等, 我们可以通过设置条件表达式永远不为 false 来实现无限循环,实例如下: ...
- Python循环语句及随机数生成
Python循环语句 编写程序时的三种顺序: 顺序:从上向下,顺序执行代码 分支:根据条件判断,决定执行代码的分支 循环:让特定代码重复执行(解决程序员重复工作) Py ...
- python进阶:switch语句、推导式与None类型
一.python实现switch语句 简单示例 适合一般情形的示例 二.推导式:由已知对象推出另一对象 列表推导式 列表推导式内一般不涉及函数(匿名函数),因为其本身就自带函数的特性 map可以是替代 ...
- python中if else语句用法_Python中if-else语句的多种写法
原博文 2017-02-06 10:24 − 初学Python在看程序时发现python中if-else的多种写法,故对其进行分析. 以下为网络内容: a, b, c = 1, 2, 3 1.常规 i ...
- [转载] Python中的switch语句的替代品
参考链接: Java中的switch语句 Python 中没有 switch语句. 一般用if-else 语句可以替代switch语句,今天学习了使用字典的映射来代替switch语句.Mark一下 d ...
- Python中用字典的映射来代替switch语句
python 中没有 switch语句.用if-else 语句替代的办法实在蠢得忍不了. 本文用字典的映射来代替switch语句,记得收藏哦. #coding:utf-8 '''字典代替switch' ...
最新文章
- 关于大型网站技术演进的思考(四)-存储的瓶颈4
- [笔记]Go语言在Linux环境下输出彩色字符
- 基于Vue.js的后台管理系统组件开发
- Thymeleaf提取公共页面(从实例入手,以inspinia模板为例)
- 从接触FPGA开始...
- 一个文件下载的工具类
- 男朋友的回答可以多敷衍?
- 静态顺序表的基本操作
- list.php tid 1,DedeCMS栏目用目录名个性化伪静态
- mysql数据库sql注入原理_sql注入原理详解(一)
- 相互宝正式宣布将于2022年1月28日关停
- html页面改成wap页面,wap网页怎么制作 这五大常见问题你要了解一下了!
- 前篇:1.公共技术点之面向对象六大原则
- %appdata% 代表什么?
- P1713 麦当劳叔叔的难题(90分)
- Liunx配置tomcat
- bSRVCC振铃前SRVCC信令流程
- 新店速递丨白玉兰(商务)酒店赣榆吾悦广场店 正式上线
- 我本不属于人间—献给全世界最伟大的女性
- Android仿苹果白色dialog