补充和动态参数

定义函数

位置参数:

直接定义参数

默认参数:

关键字参数:参数名=‘默认的值’

顺序:

必须先定义位置参数,后定义默认参数

动态参数

可以接收任意多个参数

定义方式:在参数名之前加*,习惯上用args

顺序上是:必须先定义位置参数,*args,后定义默认参数。组织成一个元组

缺点:不能接收关键字传参,只能接收位置传参。

若要接收多个乃至无穷的关键字时,定义参数名之前加·**,通常使用**kwsrgs。组织成一个字典。

1 def jishu(*args):
2     num = 0
3     for l in args:
4         num += l
5     print(num )
6     return
7 w =jishu(123,2454,45,346,234,5,)
View Code

 

def jishu(**kwargs):
    print(kwargs)
    return
w =jishu(a = int(213),b = int(2134),c = int(1234))
View Code

最终顺序:

位置参数,*args,默认参数,**kwargs。

动态参数的另一种传参方式

def jishu(*args):
    print(args)
    return
l = [1,2,3,4,5,654,56,57,65,76,7,67,57,6]
jishu(*l)
View Code

在实参的角度上给一序列加上*,就是将这个序列按照顺序打散。如果是上次字典,则加上**。

在形参的角度上,变量加上*,就是组合所有传上来的数。

 

 

函数的注释

def jishu(*args):
   '''
   #函数实现了什么功能
   #参数:
    print(args)
    return#返回了什么
    '''
l = [1,2,3,4,5,654,56,57,65,76,7,67,57,6]
jishu(*l)
View Code

 

posted @ 2019-07-29 22:27  套你大象  阅读(99)  评论(0编辑  收藏  举报