2019年10月7日 函数复习

参数传递优先级:位置一一对应,普通参数,默认参数,*参数,**参数  这个顺序是强制的

形参》》》

普通参数:普通参数必须一一对应,必须传

默认参数:可传可不传,实参级别大于形参的级别

*参数:除了关键字参数/**字典,其他都可以传,它 是一个元祖,不传也可以

**参数:只能接受关键字参数,如果接受字典,前面需要加**,不传也可以

实参》》》

普通参数:普通参数必须一一对应,必须传

默认参数:可传可不传,实参级别大于形参的级别

*参数:除了关键字参数/**字典,其他都可以传,它 是一个元祖,不传也可以

**参数:只能接受关键字参数,如果接受字典,前面需要加**,不传也可以

def fun(x,y=1,*args,**kwargs):
    print(x,y,args,kwargs)
    return

fun(2,4,3,c=4,**{'d':4})

fun(2,4,3,{'d':4})

fun(2,4,**{'d':4})

fun(2,4,**{'d':4},**{'e':5},f=6)

》》》》

2 4 (3,) {'c': 4, 'd': 4}
2 4 (3, {'d': 4}) {}
2 4 () {'d': 4}
2 4 () {'d': 4, 'e': 5, 'f': 6}

原文地址:https://www.cnblogs.com/python1988/p/11631862.html