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基础教程之实现石头剪刀布游戏示例
Feb 11 Python
Python实现列表转换成字典数据结构的方法
Mar 11 Python
python解决Fedora解压zip时中文乱码的方法
Sep 18 Python
Python通过matplotlib画双层饼图及环形图简单示例
Dec 15 Python
解决phantomjs截图失败,phantom.exit位置的问题
May 17 Python
Python实现查找最小的k个数示例【两种解法】
Jan 08 Python
python ddt数据驱动最简实例代码
Feb 22 Python
django-rest-swagger对API接口注释的方法
Aug 29 Python
python实现ftp文件传输系统(案例分析)
Mar 20 Python
Python下载网易云歌单歌曲的示例代码
Aug 12 Python
为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景
Jan 05 Python
Matplotlib配色之Colormap详解
Jan 05 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
深入了解php4(2)--重访过去
2006/10/09 PHP
php实现utf-8和GB2312编码相互转换函数代码
2013/02/07 PHP
php 实现Hash表功能实例详解
2016/11/29 PHP
PHP实现的mysql操作类【MySQL与MySQLi方式】
2017/10/07 PHP
PHP一个简单的无需刷新爬虫
2019/01/05 PHP
javascript cookie解码函数(兼容ff)
2008/03/17 Javascript
Prototype Function对象 学习
2009/07/12 Javascript
jquery ajax abort()的使用方法
2010/10/28 Javascript
JS实现点击下载的小例子
2013/07/10 Javascript
有关jquery与DOM节点操作方法和属性记录
2016/04/15 Javascript
浅谈js数据类型判断与数组判断
2016/08/29 Javascript
Vue项目中quill-editor带样式编辑器的使用方法
2017/08/08 Javascript
JavaScript闭包和回调详解
2017/08/09 Javascript
详解axios 全攻略之基本介绍与使用(GET 与 POST)
2017/09/15 Javascript
将jquery.qqFace.js表情转换成微信的字符码
2017/12/01 jQuery
解决在layer.open中使用时间控件laydate失败的问题
2019/09/11 Javascript
[01:10:27]DOTA2-DPC中国联赛正赛 SAG vs XG BO3 第二场 3月5日
2021/03/11 DOTA
Python网页解析利器BeautifulSoup安装使用介绍
2015/03/17 Python
python使用自定义user-agent抓取网页的方法
2015/04/15 Python
python设置值及NaN值处理方法
2018/07/03 Python
opencv python 傅里叶变换的使用
2018/07/21 Python
Python2 Selenium元素定位的实现(8种)
2019/02/25 Python
Python实战之制作天气查询软件
2019/05/14 Python
tensorflow 变长序列存储实例
2020/01/20 Python
Django choices下拉列表绑定实例
2020/03/13 Python
Python通过fnmatch模块实现文件名匹配
2020/09/30 Python
上海方立数码笔试题
2013/10/18 面试题
.net面试题
2016/09/17 面试题
《雨点》教学反思
2014/02/12 职场文书
奥巴马英文演讲稿
2014/05/15 职场文书
爱护花草树木的标语
2014/06/11 职场文书
美德少年事迹材料500字
2014/08/19 职场文书
教师批评与自我批评材料
2014/10/16 职场文书
指导老师鉴定意见
2015/06/05 职场文书
MySQL创建表操作命令分享
2022/03/25 MySQL
详解Python中*args和**kwargs的使用
2022/04/07 Python