一、命名关键字形参:在定义函数的时候,*形参之后的形参,称为命名关键字形参,这些形参只能接收关键字实参的传值。

def func(a, b, *, x, y):  # a,b 为位置形参,*为可变长度形参,x,y 为命名关键字形参
    pass
func(1, 2, x=1, y=2)  

二、组合参数

  1、形参混合顺序:位置形参,默认形参,*args,命名关键字形参,**kwargs。

def func(a, b=2, *args, x, **kwargs):
    pass
func(1, 3, 4, 5, x=6, y=7, z=8)  # a=1 args=(4, 5) x=6,kwargs={'y': 7, 'z': 8}

  2、实参混合顺序:位置实参,*可遍历实参,关键字实参,**字典实参。

def func(a, b, c, d, e, f):
    pass
func(1, *(2, 3), d=4, **{'e': 5, 'f': 6})  # a=1,b=2,c=3,d=4,e=5,f=6

 

posted on 2020-01-03 08:01  焚音留香  阅读(110)  评论(0编辑  收藏  举报