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 相关文章推荐
windows下wxPython开发环境安装与配置方法
Jun 28 Python
python+django快速实现文件上传
Oct 24 Python
Unicode和Python的中文处理
Mar 19 Python
利用Django内置的认证视图实现用户密码重置功能详解
Nov 24 Python
Flask和Django框架中自定义模型类的表名、父类相关问题分析
Jul 19 Python
Python3.6使用tesseract-ocr的正确方法
Oct 17 Python
Python面向对象程序设计之静态方法、类方法、属性方法原理与用法分析
Mar 23 Python
keras实现theano和tensorflow训练的模型相互转换
Jun 19 Python
Python 防止死锁的方法
Jul 29 Python
python mock测试的示例
Oct 19 Python
Python实现简单的猜单词小游戏
Oct 28 Python
python实现学生通讯录管理系统
Feb 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
PHP自动选择 连接本地还是远程数据库
2010/12/02 PHP
php中get_headers函数的作用及用法的详细介绍
2013/04/27 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
2014/06/13 PHP
ThinkPHP模板引擎之导入资源文件方法详解
2014/06/18 PHP
php通过curl模拟登陆DZ论坛
2015/05/11 PHP
在Thinkphp中使用ajax实现无刷新分页的方法
2016/10/25 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
2018/02/07 PHP
Laravel框架路由管理简单示例
2019/05/07 PHP
js遍历td tr等html元素
2012/12/13 Javascript
JS检测图片大小的实例
2013/08/21 Javascript
js创建元素(节点)示例
2014/01/02 Javascript
jQuery CSS()方法改变现有的CSS样式表
2014/09/09 Javascript
JavaScript中标识符提升问题
2015/06/11 Javascript
jQuery地图map悬停显示省市代码分享
2015/08/20 Javascript
js简单判断移动端系统的方法
2016/02/25 Javascript
jQuery使用cookie与json简单实现购物车功能
2016/04/15 Javascript
Jquery基础之事件操作详解
2016/06/14 Javascript
js实现String.Fomat的实例代码
2016/09/02 Javascript
js模态对话框使用方法详解
2017/02/16 Javascript
详解vue.js下引入百度地图jsApi的两种方法
2018/07/27 Javascript
vue项目前端错误收集之sentry教程详解
2019/05/27 Javascript
微信小程序 简易计算器实现代码实例
2019/09/02 Javascript
React实现全选功能
2020/08/25 Javascript
利用一个简单的例子窥探CPython内核的运行机制
2015/03/30 Python
深入理解Python中的内置常量
2017/05/20 Python
十行代码使用Python写一个USB病毒
2019/06/21 Python
Python bisect模块原理及常见实例
2020/06/17 Python
解决Pymongo insert时会自动添加_id的问题
2020/12/05 Python
英国领先的在线高尔夫商店:Scottsdale Golf
2019/08/26 全球购物
电钳专业个人求职信
2014/01/04 职场文书
本科应届生自荐信
2014/06/29 职场文书
水利专业大学生职业生涯规划书范文
2014/09/17 职场文书
教师查摆问题自查报告
2014/10/11 职场文书
2014年办公室主任工作总结
2014/11/12 职场文书
祝福语集锦:给满月宝宝的祝福语
2019/11/20 职场文书
CSS3 实现NES游戏机的示例代码
2021/04/21 HTML / CSS