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学习笔记之常用函数及说明
May 23 Python
用C++封装MySQL的API的教程
May 06 Python
编写Python脚本抓取网络小说来制作自己的阅读器
Aug 20 Python
python使用代理ip访问网站的实例
May 07 Python
python 实现求解字符串集的最长公共前缀方法
Jul 20 Python
kafka-python批量发送数据的实例
Dec 27 Python
Jupyter notebook在mac:linux上的配置和远程访问的方法
Jan 14 Python
在Python中居然可以定义两个同名通参数的函数
Jan 31 Python
python使用MQTT给硬件传输图片的实现方法
May 05 Python
python 获取sqlite3数据库的表名和表字段名的实例
Jul 17 Python
python 正则表达式参数替换实例详解
Jan 17 Python
基于logstash实现日志文件同步elasticsearch
Aug 06 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 判断字符串中是否包含html标签
2014/02/17 PHP
ThinkPHP模板替换与系统常量及应用实例教程
2014/08/22 PHP
php文件夹的创建与删除方法
2015/01/24 PHP
php数组去除空值函数分享
2015/02/02 PHP
基于PHP微信红包的算法探讨
2016/07/21 PHP
php 修改上传文件大小限制实例详解
2016/10/23 PHP
PHP pthreads v3下同步处理synchronized用法示例
2020/02/21 PHP
asp.net下利用js实现返回上一页的实现方法小集
2009/11/24 Javascript
提高javascript效率 一次判断,而不要次次判断
2012/03/30 Javascript
jQuery简易图片放大特效示例代码
2014/06/09 Javascript
JS、CSS以及img对DOMContentLoaded事件的影响
2014/08/12 Javascript
使用js获取图片原始尺寸
2014/12/03 Javascript
鼠标事件的screenY,pageY,clientY,layerY,offsetY属性详解
2015/03/12 Javascript
使用postMesssage()实现跨域iframe页面间的信息传递方法
2016/03/29 Javascript
浅谈JavaScript函数的四种存在形态
2016/06/08 Javascript
Angularjs中三种数据的绑定策略(“@”,“=”,“&”)
2016/12/23 Javascript
jquery使用EasyUI Tree异步加载JSON数据(生成树)
2017/02/11 Javascript
Vue 父子组件的数据传递、修改和更新方法
2018/03/01 Javascript
Vue-CLI 项目在pycharm中配置方法
2019/08/30 Javascript
python简易远程控制单线程版
2018/06/20 Python
在Python中定义一个常量的方法
2018/11/10 Python
详解Python传入参数的几种方法
2019/05/16 Python
Python如何应用cx_Oracle获取oracle中的clob字段问题
2019/08/27 Python
Python爬虫实现的根据分类爬取豆瓣电影信息功能示例
2019/09/15 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
Python读取分割压缩TXT文本文件实例
2020/02/14 Python
CSS3中的常用选择器使用示例整理
2016/06/13 HTML / CSS
用css3实现转换过渡和动画效果
2020/03/13 HTML / CSS
Urban Outfitters美国官网:美国生活方式品牌
2016/08/26 全球购物
美国在线奢侈品寄售商店:Luxury Garage Sale
2018/08/19 全球购物
一个SQL面试题
2014/08/21 面试题
银行员工辞职信范文
2014/01/20 职场文书
工程造价专业大学生职业规划范文
2014/03/09 职场文书
婚前协议书怎么写
2014/04/15 职场文书
刑事辩护授权委托书
2014/09/13 职场文书
七年级数学教学反思
2016/02/17 职场文书