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操作xml文件详细介绍
Jun 09 Python
教你如何将 Sublime 3 打造成 Python/Django IDE开发利器
Jul 04 Python
Python的Flask框架中Flask-Admin库的简单入门指引
Apr 07 Python
Python字符串匹配算法KMP实例
Jul 18 Python
Python实现包含min函数的栈
Apr 29 Python
python如何重载模块实例解析
Jan 25 Python
python写入已存在的excel数据实例
May 03 Python
Django渲染Markdown文章目录的方法示例
Jan 02 Python
python调用matlab的m自定义函数方法
Feb 18 Python
Python人工智能之路 jieba gensim 最好别分家之最简单的相似度实现
Aug 13 Python
python如何正确使用yield
May 21 Python
Python 居然可以在 Excel 中画画你知道吗
Feb 15 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模板引擎Smarty内置变量调解器用法详解
2016/04/11 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
解决laravel资源加载路径设置的问题
2019/10/14 PHP
用于table内容排序
2006/07/21 Javascript
用javascript实现给图片加链接
2007/08/15 Javascript
js 得到文件后缀(通过正则实现)
2013/07/08 Javascript
node.js中的path.isAbsolute方法使用说明
2014/12/08 Javascript
jQuery调用Webservice传递json数组的方法
2016/08/06 Javascript
AngularJS $http模块POST请求实现
2017/04/08 Javascript
vue2.X组件学习心得(新手必看篇)
2017/07/05 Javascript
AngularJS通过ng-Img-Crop实现头像截取的示例
2017/08/17 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
Vue2.0结合webuploader实现文件分片上传功能
2018/03/09 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
Vue开发Html5微信公众号的步骤
2019/04/11 Javascript
详解Vue中的基本语法和常用指令
2019/07/23 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
2019/09/27 Javascript
vue-socket.io接收不到数据问题的解决方法
2020/05/13 Javascript
Python如何快速上手? 快速掌握一门新语言的方法
2017/11/14 Python
详解Python中如何写控制台进度条的整理
2018/03/07 Python
python3.7实现云之讯、聚合短信平台的短信发送功能
2019/09/26 Python
python json.dumps() json.dump()的区别详解
2020/07/14 Python
Python如何合并多个字典或映射
2020/07/24 Python
HTML5引入的新数组TypedArray介绍
2012/12/24 HTML / CSS
小橄榄树:Le Petit Olivier
2018/04/23 全球购物
关于爱情的广播稿
2014/01/16 职场文书
应届中专生自荐书范文
2014/02/13 职场文书
标准的毕业生自荐信
2014/04/20 职场文书
中华魂演讲稿
2014/05/13 职场文书
英语分层教学实施方案
2014/06/15 职场文书
生产助理岗位职责
2014/06/18 职场文书
2014年小学校长工作总结
2014/12/08 职场文书
村干部任职承诺书
2015/01/21 职场文书
出生公证书
2015/01/23 职场文书
2015年秋季学校开学标语
2015/07/16 职场文书
2016春季田径运动会广播稿
2015/12/21 职场文书