对python中的*args与**kwgs的含义与作用详解


Posted in Python onAugust 28, 2019

在定义函数的时候参数通常会使用

*args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用。

*args是非关键字参数,用于元组,**kw是关键字参数

例如下面的代码

def foo(*args,**kwargs):
 print 'args is',args
 print 'kwargs is',kwargs
foo(1,2)
foo(k=1,w=2,a=3,r=4,g=5,s=6)
foo(1,2,a=1,b=2,c=2)
foo('a',1,None,a=1,b='2',c=3)

在函数foo中定义了两个参数

在调用的时候,传递参数,最后的结果如下

args is (1, 2)
kwargs is {}
args is ()
kwargs is {'a': 3, 'g': 5, 'k': 1, 's': 6, 'r': 4, 'w': 2}
args is (1, 2)
kwargs is {'a': 1, 'c': 2, 'b': 2}
args is ('a', 1, None)
kwargs is {'a': 1, 'c': 3, 'b': '2'}

在其中args为一个元组而kwags是一个字典类型。

这两个作为python的可变参数,也就是说args表示任何多个无名参数,然而kwags表示一个一个有着对应关系的关键字参数。

在使用的时候需要注意,*args要在**kwags之前,不然会发生语法错误。

以上这篇对python中的*args与**kwgs的含义与作用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现的jpg格式图片修复代码
Apr 21 Python
Python读取sqlite数据库文件的方法分析
Aug 07 Python
Python实现基本数据结构中队列的操作方法示例
Dec 04 Python
Python3解决棋盘覆盖问题的方法示例
Dec 07 Python
python3实现跳一跳点击跳跃
Jan 08 Python
python基于socket实现的UDP及TCP通讯功能示例
Nov 01 Python
Pytorch高阶OP操作where,gather原理
Apr 30 Python
django 数据库 get_or_create函数返回值是tuple的问题
May 15 Python
python和php哪个更适合写爬虫
Jun 22 Python
通过Python实现Payload分离免杀过程详解
Jul 13 Python
Python 合并拼接字符串的方法
Jul 28 Python
Django自定义YamlField实现过程解析
Nov 11 Python
关于python导入模块import与常见的模块详解
Aug 28 #Python
Python datetime包函数简单介绍
Aug 28 #Python
解决python有时候import不了当前的包问题
Aug 28 #Python
Python 多线程其他属性以及继承Thread类详解
Aug 28 #Python
Python 动态导入对象,importlib.import_module()的使用方法
Aug 28 #Python
Python 共享变量加锁、释放详解
Aug 28 #Python
Python使用百度api做人脸对比的方法
Aug 28 #Python
You might like
关于php中一些字符串总结
2016/05/05 PHP
浅谈ThinkPHP中initialize和construct的区别
2017/04/01 PHP
PHP PDOStatement::fetchColumn讲解
2019/01/31 PHP
Prototype1.6 JS 官方下载地址
2007/11/30 Javascript
jquery获取ASP.NET服务器端控件dropdownlist和radiobuttonlist生成客户端HTML标签后的value和text值
2010/06/28 Javascript
jquery 圆形旋转图片滚动切换效果
2011/01/19 Javascript
前台js对象在后台转化java对象的问题探讨
2013/12/20 Javascript
JQuery为页面Dom元素绑定事件及解除绑定方法
2014/04/23 Javascript
js实现仿百度汽车频道选择汽车图片展示实例
2015/05/06 Javascript
JS密码生成与强度检测完整实例(附demo源码下载)
2016/04/06 Javascript
easyui-datagrid开发实践(总结)
2017/08/02 Javascript
vue实现图书管理demo详解
2017/10/17 Javascript
JS使用贪心算法解决找零问题示例
2017/11/27 Javascript
解决在vue项目中webpack打包后字体不生效的问题
2018/09/01 Javascript
JavaScript 高性能数组去重的方法
2018/09/20 Javascript
JavaScript获取当前url路径过程解析
2019/12/27 Javascript
详解关于Vue单元测试的几个坑
2020/04/26 Javascript
在vue项目中promise解决回调地狱和并发请求的问题
2020/11/09 Javascript
更改Ubuntu默认python版本的两种方法python-> Anaconda
2016/12/18 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
2017/08/05 Python
Python3字符串encode与decode的讲解
2019/04/02 Python
python命令 -u参数用法解析
2019/10/24 Python
在TensorFlow中屏蔽warning的方式
2020/02/04 Python
Python库安装速度过慢解决方案
2020/07/14 Python
Python hashlib模块的使用示例
2020/10/09 Python
Python+unittest+DDT实现数据驱动测试
2020/11/30 Python
Python类型转换的魔术方法详解
2020/12/23 Python
欧姆龙医疗欧洲有限公司:Omron Healthcare Europe B.V
2020/06/13 全球购物
平面设计专业大学生职业规划书
2014/03/12 职场文书
战友聚会策划方案
2014/06/13 职场文书
技术股东合作协议书
2014/12/02 职场文书
2015年保险公司个人工作总结
2015/05/22 职场文书
电影雨中的树观后感
2015/06/15 职场文书
深度好文:50条没人告诉你的人生经验,句句精辟
2019/08/22 职场文书
曾国藩励志经典名言37句,蕴含哲理
2019/10/14 职场文书
Mysql中有关Datetime和Timestamp的使用总结
2021/12/06 MySQL