博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python-*args与**kwagrs 动态形参使用说明
阅读量:7198 次
发布时间:2019-06-29

本文共 731 字,大约阅读时间需要 2 分钟。

 

fruits = ['apple','banana','pear','grape']

student = {
"name":"hanmeimei",
"age":22,
"sex":"female"
}

*args普通动态参会将传入多余的参数组合成一个元祖

def func1(x,*args):

  print("args={}".format(args))

func1(1,2,3,fruits)

func1(1,2,3,student)
输出结果:
args=(2, 3, ['apple', 'banana', 'pear', 'grape'])
args=(2, 3, {'name': 'hanmeimei', 'age': 22, 'sex': 'female'})

 **kwargs 关键字动态参数会将传入的多余的关键字参数【必须是键值对形式】组合成一个字典

def func2(x,y,**kwargs):

  print("kwargs={}".format(kwargs))
func2(1,2,e=3,d=3,a='apple',c=8)

将一个字典前加上** 传入函数时相当于将字典中的键值对以关键字参数的形式传入函数

def func3(**kwargs):
  print(kwargs)
func3(**student)
输出结果:
kwargs={'e': 3, 'd': 3, 'a': 'apple', 'c': 8}
{'name': 'hanmeimei', 'age': 22, 'sex': 'female'}

转载于:https://www.cnblogs.com/cool2005/p/10587005.html

你可能感兴趣的文章
java指纹识别+谷歌图片识别技术_源代码
查看>>
如何正确的创建线程
查看>>
关于zsh在使用scp时报错zsh: no matches found: scp
查看>>
NOP 扩展新表步骤
查看>>
classmethod、staticclassmethod内置装饰器函数
查看>>
052(十九)
查看>>
Servlet 3特性:异步Servlet
查看>>
第九章 运算符
查看>>
用了这个方法,你也可以做到45°的回测曲线(转自 BotVS )
查看>>
URAL 1146 Maximum Sum 最大子矩阵和
查看>>
javascript变量作用域 — 全局变量
查看>>
Linux初学(四)
查看>>
为hisiv200交叉编译valgrind3.7
查看>>
Linux添加永久静态路由
查看>>
由ubuntu装好想到的
查看>>
Base-64 字符数组或字符串的长度无效等问题解决方案
查看>>
Python学习--和 Oracle 交互(2)
查看>>
C#多线程JOIN方法初探
查看>>
获取自定义属性的值
查看>>
POJ-2718 Smallest Difference---DFS
查看>>