python3检查字典传入函数键是否齐全的实例


Posted in Python onJune 05, 2020

python 在传入字典参数到函数中时总是需要检查键是否齐全,每次手工写总是觉得太麻烦。

所以还是自己写一个比较方便。

#Check if the incoming dictionary parameters are complete
def check_keys(list, dic):
  if all(k in dic for k in list):
    return 1
  else:
    return 0


def fun(**kwargs):
  if check_keys(['a', 'b', 'c'], kwargs):
    a = kwargs['a']
    b = kwargs['b']
    c = kwargs['c']

补充知识:Python之函数调用时,可变参数的传递(元组参数、字典参数各两种用法)

0、元组参数用法1:解封元组,传递给位置参数

def printHello(user,age,address):
  print(user)
  print(age)
  print(address)
 
printHello(*('wang yuan wai',30,'Beijing'))

1、元组参数用法2: 函数本身接受一个可变参数,未进行解封,而是直接将可变参数传递进来了

def printHello(*data):
  print(data)
 
printHello(*('wang yuan wai',30,'Beijing'))

2、字典参数用法1:

def printHello(name,age,address):
  print(name)
  print(age)
  print(address)
 
printHello(**{'name':'wp','age':30,'address':'Beijing'}) #调用函数时为解封,看原函数能否接受
printHello(name='wp',age=30,address='Beijing') #解封后的原型

3、字典参数用法2:接受一个可变参数,字典参数,函数本身接受一个字典参数,解封功能未启用,直接通过字典参数传递进来

def printHello(**data):
  print(data)
 
printHello(**{'name':'wp','age':30,'address':'Beijing'})

4、我的ddt模块与csv模块的结合,就是干的这个……

以上这篇python3检查字典传入函数键是否齐全的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
如何搜索查找并解决Django相关的问题
Jun 30 Python
Python中的作用域规则详解
Jan 30 Python
Python中splitlines()方法的使用简介
May 20 Python
urllib和BeautifulSoup爬取维基百科的词条简单实例
Jan 17 Python
Python针对给定字符串求解所有子序列是否为回文序列的方法
Apr 21 Python
python中plot实现即时数据动态显示方法
Jun 22 Python
让Python脚本暂停执行的几种方法(小结)
Jul 11 Python
Python使用sqlite3模块内置数据库
May 07 Python
Pandas读取csv时如何设置列名
Jun 02 Python
keras训练浅层卷积网络并保存和加载模型实例
Jul 02 Python
python Matplotlib模块的使用
Sep 16 Python
python绘图subplots函数使用模板的示例代码
Apr 30 Python
Python使用20行代码实现微信聊天机器人
Jun 05 #Python
Python并发请求下限制QPS(每秒查询率)的实现代码
Jun 05 #Python
Python爬虫爬取百度搜索内容代码实例
Jun 05 #Python
python3读取autocad图形文件.py实例
Jun 05 #Python
Python实现加密接口测试方法步骤详解
Jun 05 #Python
基于python 将列表作为参数传入函数时的测试与理解
Jun 05 #Python
python 引用传递和值传递详解(实参,形参)
Jun 05 #Python
You might like
PHP编写RESTful接口的方法
2016/02/21 PHP
PHP中Static(静态)关键字功能与用法实例分析
2019/04/05 PHP
php无限极分类实现方法分析
2019/07/04 PHP
laravel 自定义常量的两种方案
2019/10/14 PHP
Javascript+XMLHttpRequest+asp.net无刷新读取数据库数据
2009/08/09 Javascript
关于jquery动态增减控件的一些想法和小插件
2010/08/01 Javascript
jQuery1.6 使用方法二
2011/11/23 Javascript
jQuery之end()和pushStack()使用介绍
2012/02/07 Javascript
js或者jquery判断图片是否加载完成实现代码
2013/03/20 Javascript
Ajax清除浏览器js、css、图片缓存的方法
2015/08/06 Javascript
AngularJS 作用域详解及示例代码
2016/08/17 Javascript
Web打印解决方案之证件套打的实现思路
2016/08/29 Javascript
微信小程序 Video API实例详解
2016/10/02 Javascript
详解JavaScript RegExp对象
2017/02/04 Javascript
微信小程序中的canvas 文字断行和省略号显示功能的处理方法
2018/11/14 Javascript
JsonProperty 的使用方法详解
2019/10/11 Javascript
JS实现的定时器展示简单秒表、页面弹框及跳转操作完整示例
2020/01/26 Javascript
JS XMLHttpRequest原理与使用方法深入详解
2020/04/30 Javascript
关于uniApp editor微信滑动问题
2021/01/15 Javascript
JS实现点击掉落特效
2021/01/29 Javascript
[36:16]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.19
2020/12/24 DOTA
使用pandas对矢量化数据进行替换处理的方法
2018/04/11 Python
对numpy.append()里的axis的用法详解
2018/06/28 Python
对Python中plt的画图函数详解
2018/11/07 Python
Python 等分切分数据及规则命名的实例代码
2019/08/16 Python
基于Python和PyYAML读取yaml配置文件数据
2020/01/13 Python
使用python批量修改XML文件中图像的depth值
2020/07/22 Python
HTML5 Canvas 旋转风车绘制
2017/08/18 HTML / CSS
香港No.1得奖零食网:香港零食大王
2016/07/22 全球购物
华为旗下电子商务平台:华为商城
2016/08/06 全球购物
计算s=f(f(-1.4))的值
2014/05/06 面试题
你们项目是如何进行变更控制的
2015/08/26 面试题
《地震中的父与子》教学反思
2014/04/10 职场文书
化工专业求职信
2014/07/01 职场文书
学生抄袭作业的检讨书
2014/10/02 职场文书
2014年工商所工作总结
2014/12/09 职场文书