为了账号安全,请及时绑定邮箱和手机立即绑定

这里return f(*args, **kw)是什么意思啊?

这里return f(*args, **kw)是什么意思啊?

正在回答

5 回答

这是调用被装饰的函数fn,fn可能会有多个参数,所以参数写成(*args, **kw)


0 回复 有任何疑惑可以回复我~
#1

秦始瑝3250279

为什么不是fn(*args, **kw)?
2016-05-20 回复 有任何疑惑可以回复我~

*args可以当作可容纳多个变量组成的list

**kwargs可以当作容纳多个key和value的dictionary

1 回复 有任何疑惑可以回复我~

子非鱼的的程序运行出来的结果就会是

(1, 2, 3, 4, 5, 6)

('a': 5, 'b': 7, 'c': 8)

0 回复 有任何疑惑可以回复我~
def fun ( *args, **kw ):
	print args 
	print kw

fun ( 1, 2, 3, 4, 5, 6, a = 5, b = 7, c = 8 )


1 回复 有任何疑惑可以回复我~

个人理解,都是用来搜集冗余参数的,就是在写的程序里面没有给定义的参数。*args是搜集列表形式的参数,**kw是收集类似于字典那样,有两个参数的。


1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

这里return f(*args, **kw)是什么意思啊?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信