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 相关文章推荐
Python中利用sorted()函数排序的简单教程
Apr 27 Python
python实现爬虫统计学校BBS男女比例之多线程爬虫(二)
Dec 31 Python
python爬虫基本知识
Mar 05 Python
Python装饰器的执行过程实例分析
Jun 04 Python
浅谈Tensorflow由于版本问题出现的几种错误及解决方法
Jun 13 Python
详解Python 调用C# dll库最简方法
Jun 20 Python
Python函数的定义方式与函数参数问题实例分析
Dec 26 Python
Pytorch实现各种2d卷积示例
Dec 30 Python
python 爬取B站原视频的实例代码
Sep 09 Python
PyCharm 解决找不到新打开项目的窗口问题
Jan 15 Python
解决python的空格和tab混淆而报错的问题
Feb 26 Python
Python学习开发之图形用户界面详解
Aug 23 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程序员的13个好习惯小结
2012/02/20 PHP
利用php下载xls文件(自己动手写的)
2014/04/18 PHP
PHP 中 var_export、print_r、var_dump 调试中的区别
2018/06/19 PHP
js可突破windows弹退效果代码
2008/08/09 Javascript
JQuery对表格进行操作的常用技巧总结
2014/04/23 Javascript
javascript原始值和对象引用实例分析
2015/04/25 Javascript
Vue 单文件中的数据传递示例
2017/03/21 Javascript
基于layer.js实现收货地址弹框选择然后返回相应的地址信息
2017/05/26 Javascript
微信小程序顶部可滚动导航效果
2017/10/31 Javascript
微信小程序如何获取用户收货地址
2018/11/27 Javascript
详解javascript函数写法大全
2019/03/25 Javascript
vue实现点击追加选中样式效果
2019/11/01 Javascript
[01:02:06]LGD vs Mineski Supermajor 胜者组 BO3 第二场 6.5
2018/06/06 DOTA
Python实现基于HTTP文件传输实例
2014/11/08 Python
SQLite3中文编码 Python的实现
2017/01/11 Python
Python入门之三角函数全解【收藏】
2017/11/08 Python
Python supervisor强大的进程管理工具的使用
2019/04/24 Python
django 捕获异常和日志系统过程详解
2019/07/18 Python
python实现将range()函数生成的数字存储在一个列表中
2020/04/02 Python
Python通过文本和图片生成词云图
2020/05/21 Python
CSS3 实现倒计时效果
2020/11/25 HTML / CSS
纽约海:Sea New York
2018/11/04 全球购物
新加坡鲜花速递/新加坡网上花店:Ferns N Petals
2020/08/29 全球购物
第二层交换机和路由器的区别?第三层交换机和路由器的区别?
2013/05/23 面试题
护理学毕业生自荐信
2013/10/02 职场文书
不打扫卫生检讨书
2014/02/12 职场文书
《充气雨衣》教学反思
2014/04/07 职场文书
优秀少先队大队辅导员事迹材料
2014/05/04 职场文书
不服从上级领导安排的检讨书
2014/09/14 职场文书
办理房产证委托书
2014/09/18 职场文书
2015年护士医德医风自我评价
2015/03/03 职场文书
2015年维修工作总结
2015/04/25 职场文书
简单的辞职信范文(2016最新版)
2015/05/12 职场文书
团组织推荐意见
2015/06/05 职场文书
golang 实用库gotable的具体使用
2021/07/01 Golang
MySQL读取JSON转换的方式
2022/03/18 MySQL