Python如何使用函数做字典的值


Posted in Python onNovember 30, 2019

这篇文章主要介绍了Python如何使用函数做字典的值,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

当需要用到3个及以上的if...elif...else时就要考虑该方法进行简化
通过将函数名称当做字典的值,利用字典的关键字查询,可以快速定位函数,进行执行

【场景】用户查询信息,输入fn查询,执行对应函数

# 简单用十个函数模拟查询函数
def fun1():
  print("查询1")
def fun2():
  print("查询2")
def fun3():
  print("查询3")
def fun4():
  print("查询4")
def fun5():
  print("查询5")
def fun6():
  print("查询6")
def fun7():
  print("查询7")
def fun8():
  print("查询8")
def fun9():
  print("查询9")
def fun10():
  print("查询10")

传统方法 if...elif...elif...else(写起来很麻烦)

choice = input("请输入查询内容fn:")
if choice == 'f1':
  fun1()
elif choice == 'f2':
  fun2()
elif choice == 'f3':
  fun3()
elif choice == 'f4':
  fun4()
elif choice == 'f5':
  fun5()
elif choice == 'f6':
  fun6()
else:
  fun10()

"""
请输入查询内容fn:f1
查询1

"""

将函数当做字典的值

# 创建字典
info = {'f1': fun1,
    'f2': fun2,
    'f3': fun3,
    'f4': fun4,
    'f5': fun5,
    'f6': fun6,
    'f7': fun7,
    'f8': fun8,
    'f9': fun9,
    'f10': fun10}
choice = input("请输入查询内容fn:")
info_value = info.get(choice)
print(info_value)
if info_value:
  info_value()
else:
  print('输入异常')
"""
请输入查询内容fn:f11
None
输入异常

"""

获取字典中的value 使用get()函数,这样当关键字不存在时,返回的值的None,不会导致程序报错

【总结】遇到连续重复的代码编写时,要思考解决方法,提高编程效率,同时增加代码的可读性

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

Python 相关文章推荐
Python松散正则表达式用法分析
Apr 29 Python
python先序遍历二叉树问题
Nov 10 Python
django实现web接口 python3模拟Post请求方式
Nov 19 Python
详解python 中in 的 用法
Dec 12 Python
tensorflow模型继续训练 fineturn实例
Jan 21 Python
tensorflow之tf.record实现存浮点数数组
Feb 17 Python
Python全面分析系统的时域特性和频率域特性
Feb 26 Python
Spring Boot中使用IntelliJ IDEA插件EasyCode一键生成代码详细方法
Mar 20 Python
python实现将列表中各个值快速赋值给多个变量
Apr 02 Python
python中执行smtplib失败的处理方法
Jul 01 Python
python右对齐的实例方法
Jul 05 Python
Python selenium环境搭建实现过程解析
Sep 08 Python
关于Numpy中的行向量和列向量详解
Nov 30 #Python
numpy:np.newaxis 实现将行向量转换成列向量
Nov 30 #Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
Nov 30 #Python
python 实现多维数组转向量
Nov 30 #Python
python 二维矩阵转三维矩阵示例
Nov 30 #Python
Python三元运算与lambda表达式实例解析
Nov 30 #Python
python将三维数组展开成二维数组的实现
Nov 30 #Python
You might like
Smarty模板快速入门
2007/01/04 PHP
PHP实现数字补零功能的2个函数介绍
2014/05/12 PHP
PHP转盘抽奖接口实例
2015/02/09 PHP
php简单分页类实现方法
2015/02/26 PHP
PHP基于自增数据如何生成不重复的随机数示例
2017/05/19 PHP
PHP 7.4 新语法之箭头函数实例详解
2019/05/09 PHP
THINKPHP5.1 Config的配置与获取详解
2020/06/08 PHP
Aster vs Newbee BO5 第一场2.19
2021/03/10 DOTA
在一个form用一个SUBMIT(或button)分别提交到两个处理表单页面的代码
2007/02/15 Javascript
js Object2String方便查看js对象内容
2014/11/24 Javascript
浅谈javascript的分号的使用
2015/05/12 Javascript
js创建jsonArray传输至后台及后台全面解析
2016/04/11 Javascript
微信小程序 详解下拉加载与上拉刷新实现方法
2017/01/13 Javascript
Vue.js原理分析之observer模块详解
2017/02/17 Javascript
Vue框架中正确引入JS库的方法介绍
2017/07/30 Javascript
vue+web端仿微信网页版聊天室功能
2019/04/30 Javascript
JS实现的简单tab切换功能完整示例
2019/06/20 Javascript
python 中random模块的常用方法总结
2017/07/08 Python
python 整数越界问题详解
2019/06/27 Python
Django实现文件上传下载功能
2019/10/06 Python
SELENIUM自动化模拟键盘快捷键操作实现解析
2019/10/28 Python
tensorflow estimator 使用hook实现finetune方式
2020/01/21 Python
PyCharm永久激活方式(推荐)
2020/09/22 Python
Python日志器使用方法及原理解析
2020/09/27 Python
IE矩阵Matrix滤镜旋转与缩放及如何结合transform
2012/11/29 HTML / CSS
html5中valid、invalid、required的定义
2014/02/21 HTML / CSS
LocalStorage记住用户和密码功能
2017/07/24 HTML / CSS
美国最流行的男士时尚网站:Touch of Modern
2018/02/05 全球购物
英国手工布艺沙发在线购买:Sofas & Stuff
2018/03/02 全球购物
Vichy薇姿加拿大官网:法国药妆,全球专业敏感肌护肤领先品牌
2018/07/11 全球购物
美术专业学生个人自我评价
2013/09/19 职场文书
宿舍打麻将检讨书
2014/01/24 职场文书
英语教师个人总结
2015/02/09 职场文书
物业工程部主管岗位职责
2015/04/16 职场文书
2016年学校“3.12”植树节活动总结
2016/03/16 职场文书
《学会生存》读后感3篇
2019/12/09 职场文书