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

(编辑:jimmy 日期: 2024/9/21 浏览:2)

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]

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

一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。