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 相关文章推荐
教你用Type Hint提高Python程序开发效率
Aug 08 Python
Python中模块pymysql查询结果后如何获取字段列表
Jun 05 Python
深入了解Python中pop和remove的使用方法
Jan 09 Python
从运行效率与开发效率比较Python和C++
Dec 14 Python
python用fsolve、leastsq对非线性方程组求解
Dec 15 Python
python 处理微信对账单数据的实例代码
Jul 19 Python
Python对接支付宝支付自实现功能
Oct 10 Python
通过实例简单了解Python中yield的作用
Dec 11 Python
python闭包、深浅拷贝、垃圾回收、with语句知识点汇总
Mar 11 Python
Django多数据库配置及逆向生成model教程
Mar 28 Python
Python3 使用pip安装git并获取Yahoo金融数据的操作
Apr 08 Python
python爬取新闻门户网站的示例
Apr 25 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
盘点被央视点名过的日本动画电影 一部比一部强
2020/03/08 日漫
php array_walk() 数组函数
2011/07/12 PHP
php重定向的三种方法分享
2012/02/22 PHP
phplot生成图片类用法详解
2015/01/06 PHP
php实现字符串首字母大写和单词首字母大写的方法
2015/03/14 PHP
phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法
2016/03/30 PHP
php实现的XML操作(读取)封装类完整实例
2017/02/23 PHP
javascript 表单验证常见正则
2009/09/28 Javascript
JS无限树状列表实现代码
2011/01/11 Javascript
jquery 实现密码框的显示与隐藏示例代码
2013/09/18 Javascript
JS获取select-option-text_value的方法
2013/12/26 Javascript
借助javascript代码判断网页是静态还是伪静态
2014/05/05 Javascript
用javascript关闭本窗口技巧小结
2014/09/05 Javascript
js判断数组key是否存在(不用循环)的简单实例
2016/08/03 Javascript
JS实现用户注册时获取短信验证码和倒计时功能
2016/10/27 Javascript
js对字符串进行编码的方法总结(推荐)
2016/11/10 Javascript
微信小程序 弹幕功能简单实例
2017/02/14 Javascript
Js利用prototype自定义数组方法示例
2017/10/20 Javascript
JavaScript实现异步图像上传功能
2018/07/12 Javascript
Angular ElementRef简介及其使用
2018/10/01 Javascript
js实现多个倒计时并行 js拼团倒计时
2019/02/25 Javascript
微信小程序 简易计算器实现代码实例
2019/09/02 Javascript
JS防抖和节流实例解析
2019/09/24 Javascript
详解vue中在父组件点击按钮触发子组件的事件
2020/11/13 Javascript
Python 流程控制实例代码
2009/09/25 Python
Python实现拼接多张图片的方法
2014/12/01 Python
Python zip()函数用法实例分析
2018/03/17 Python
numpy.array 操作使用简单总结
2019/11/08 Python
享誉全球的多元化时尚精品购物平台:Farfetch发发奇(支持中文)
2017/08/08 全球购物
挑战杯创业计划书的写作指南
2014/01/07 职场文书
学校党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
和谐家庭事迹材料
2014/12/20 职场文书
开除员工通知
2015/04/22 职场文书
聋哑人盗窃罪辩护词
2015/05/21 职场文书
爱的教育读书笔记
2015/06/26 职场文书
一篇文章带你学习Mybatis-Plus(新手入门)
2021/08/02 Java/Android