Python通过字典映射函数实现switch


Posted in Python onNovember 06, 2020

1、原因:python并不提供Switch语句

2、实现功能:传入某个字符串,来决定使用某个函数

# -*- encoding=utf-8 -*-
def aaa():
  print '这是aaa函数'
def bbb():
  print '这是bbb函数'
def ccc():
  print '这是ccc函数'
if __name__ == '__main__':
  choose_function = {'A': aaa, 'B': bbb, 'C': ccc}
  # 选择aaa函数
  name = 'A'
  if name in choose_function:
    fun = choose_function[name]
    fun() # 执行aaa函数
  else:
    print '选择函数错误,A->aaa,B->bbb,C->ccc'

运行结果

这是aaa函数

3、实现功能:传入某个字符串,实现选择某个列表

# -*- encoding=utf-8 -*-
aaa = ['aaa', 'bbb', 'ccc']
bbb = [1, 2, 3, 4, 5, 6]
ccc = []
if __name__ == '__main__':
  choose_list = {'A': aaa, 'B': bbb, 'C': ccc}
  # 选择bbb列表
  name = 'B'
  if name in choose_list:
    fun = choose_list[name]
    print bbb # 打印bbb列表
  else:
    print '选择列表错误,A->aaa,B->bbb,C->ccc'

运行结果

[1, 2, 3, 4, 5, 6]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python性能优化的20条建议
Oct 25 Python
粗略分析Python中的内存泄漏
Apr 23 Python
Python的自动化部署模块Fabric的安装及使用指南
Jan 19 Python
Python 对象中的数据类型
May 13 Python
python初学者,用python实现基本的学生管理系统(python3)代码实例
Apr 10 Python
python 同时读取多个文件的例子
Jul 16 Python
Pycharm连接远程服务器并实现远程调试的实现
Aug 02 Python
Python turtle绘画象棋棋盘
Aug 21 Python
使用keras实现BiLSTM+CNN+CRF文字标记NER
Jun 29 Python
深入了解Python 变量作用域
Jul 24 Python
Python根据字符串调用函数过程解析
Nov 05 Python
python实现马丁策略回测3000只股票的实例代码
Jan 22 Python
Python使用grequests并发发送请求的示例
Nov 05 #Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
Nov 05 #Python
Python中常用的os操作汇总
Nov 05 #Python
Python Web项目Cherrypy使用方法镜像
Nov 05 #Python
Python实现异步IO的示例
Nov 05 #Python
Python requests HTTP验证登录实现流程
Nov 05 #Python
Python包资源下载路径报404解决方案
Nov 05 #Python
You might like
php+ajax做仿百度搜索下拉自动提示框(有实例)
2012/08/21 PHP
win7安装php框架Yii的方法
2016/01/25 PHP
Laravel5.4框架使用socialite实现github登录的方法
2019/03/20 PHP
简单的无缝滚动程序-仅几行代码
2007/05/08 Javascript
js中判断控件是否存在
2010/08/25 Javascript
dojo学习第一天 Tab选项卡 实现
2011/08/28 Javascript
JavaScript中变量提升 Hoisting
2012/07/03 Javascript
JSON序列化与解析原生JS方法且IE6和chrome测试通过
2013/09/05 Javascript
使用bootstrapValidator插件进行动态添加表单元素并校验
2016/09/28 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
jQuery实现简单漂亮的Nav导航菜单效果
2017/03/29 jQuery
详解Angular 4.x NgTemplateOutlet
2017/05/24 Javascript
mui框架移动开发初体验详解
2017/10/11 Javascript
BootStrap自定义popover,点击区域隐藏功能的实现
2018/01/23 Javascript
微信小程序实现多选删除列表数据功能示例
2019/01/15 Javascript
使用JavaScrip模拟实现仿京东搜索框功能
2019/10/16 Javascript
linux下安装easy_install的方法
2013/02/10 Python
Python多线程同步Lock、RLock、Semaphore、Event实例
2014/11/21 Python
Python 专题一 函数的基础知识
2017/03/16 Python
Django使用Mysql数据库已经存在的数据表方法
2018/05/27 Python
Python使用matplotlib绘制三维图形示例
2018/08/25 Python
Python实现账号密码输错三次即锁定功能简单示例
2019/03/29 Python
python频繁写入文件时提速的方法
2019/06/26 Python
python3 requests库文件上传与下载实现详解
2019/08/22 Python
Python容器使用的5个技巧和2个误区总结
2019/09/26 Python
jenkins配置python脚本定时任务过程图解
2019/10/29 Python
Python 用turtle实现用正方形画圆的例子
2019/11/21 Python
Python类反射机制使用实例解析
2019/12/30 Python
Python爬虫实现selenium处理iframe作用域问题
2021/01/27 Python
志愿者活动总结范文
2014/04/26 职场文书
毕业生学校推荐信范文
2014/05/21 职场文书
焦裕禄精神心得体会
2014/09/02 职场文书
教师对照四风自我剖析材料
2014/09/30 职场文书
2014年外贸业务员工作总结
2014/12/11 职场文书
不负正版帝国之名 《重返帝国》引领SLG手游制作新的标杆
2022/04/07 其他游戏
Spring中的@Transactional的工作原理
2022/06/05 Java/Android