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中splitlines()方法的使用简介
May 20 Python
python 实现网上商城,转账,存取款等功能的信用卡系统
Jul 15 Python
Python网络爬虫神器PyQuery的基本使用教程
Feb 03 Python
Python 修改列表中的元素方法
Jun 26 Python
python  创建一个保留重复值的列表的补码
Oct 15 Python
利用Python查看微信共同好友功能的实现代码
Apr 24 Python
Python有参函数使用代码实例
Jan 06 Python
使用pytorch和torchtext进行文本分类的实例
Jan 08 Python
python 插入日期数据到Oracle实例
Mar 02 Python
python 操作mysql数据中fetchone()和fetchall()方式
May 15 Python
python自定义函数def的应用详解
Jun 03 Python
Python re.sub 反向引用的实现
Jul 07 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
为什么那些咖啡爱好者大多看不上连锁咖啡店?
2021/03/06 咖啡文化
Laravel5.1 框架控制器基础用法实例分析
2020/01/04 PHP
Jquery cookie操作代码
2010/03/14 Javascript
如何防止回车(enter)键提交表单
2014/05/11 Javascript
javascript中bind函数的作用实例介绍
2014/09/28 Javascript
JS倒计时代码汇总
2014/11/25 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
JQuery实现网页右侧随动广告特效
2016/01/17 Javascript
Angular1.x自定义指令实例详解
2017/03/01 Javascript
微信小程序之网络请求简单封装实例详解
2017/06/28 Javascript
Vue.js中extend选项和delimiters选项的比较
2017/07/17 Javascript
Vue中建立全局引用或者全局命令的方法
2017/08/21 Javascript
JavaScript 保护变量不被随意修改的实现代码
2017/09/27 Javascript
解决option标签selected="selected"属性失效的问题
2017/11/06 Javascript
小程序实现页面顶部选项卡效果
2018/11/06 Javascript
javascript设计模式 ? 外观模式原理与用法实例分析
2020/04/15 Javascript
JS JQuery获取data-*属性值方法解析
2020/09/01 jQuery
微信小程序自定义底部弹出框功能
2020/11/18 Javascript
[48:00]完美世界DOTA2联赛循环赛 Forest vs Inki BO2第二场 11.04
2020/11/04 DOTA
python记录程序运行时间的三种方法
2017/07/14 Python
浅谈numpy库的常用基本操作方法
2018/01/09 Python
python清除函数占用的内存方法
2018/06/25 Python
PySide和PyQt加载ui文件的两种方法
2019/02/27 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
2020/12/08 Python
Django url 路由匹配过程详解
2021/01/22 Python
Expedia西班牙:预订酒店、机票、旅行和廉价度假套餐
2019/04/10 全球购物
人力资源管理专业自荐书范文
2014/02/10 职场文书
家长对孩子的感言
2014/03/10 职场文书
村主任“四风”问题个人对照检查材料思想汇报
2014/10/02 职场文书
党员个人整改措施
2014/10/24 职场文书
敬业奉献模范事迹材料
2014/12/24 职场文书
退休职工欢送会致辞
2015/08/01 职场文书
2016元旦主持人经典开场白台词
2015/12/03 职场文书
如何用python反转图片,视频
2021/04/24 Python
Java生成读取条形码和二维码的简单示例
2021/07/09 Java/Android
Java实现扫雷游戏详细代码讲解
2022/05/25 Java/Android