python *arg和**kwargs的区别

转载自:https://www.cnblogs.com/yunguoxiaoqiao/p/7626992.html

一、*args的使用方法

      *args 用来将参数打包成tuple给函数体调用

      举个栗子:

def function(x, y, *args):
    print(x, y, args)

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

  输出结果:

 

二、**kwargs的使用方法

      **kwargs 打包关键字参数成dict给函数体调用

  举个栗子:

扫描二维码关注公众号,回复: 8306404 查看本文章
def function(x, y, *args):
    print(x, y, args)

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

  输出结果:

注意:参数arg、*args、**kwargs三个参数的位置必须是一定的。必须是(arg,*args,**kwargs)这个顺序,否则程序会报错。

def function(arg,*args,**kwargs):
    print(arg,args,kwargs)

function(6,7,8,9,a=1, b=2, c=3)

猜你喜欢

转载自www.cnblogs.com/hooo-1102/p/12095179.html