(1)默认参数:
如果不传入新的参数名称,则使用这个默认参数及其值
1 def function(self,param1,param2): 2 return param1+param2 3 result1=function(1) 4 result2=function(1,param2=2) 5 result3=function(1,param2=3)
其运行结果为3 3 4
(2)可变参数:
函数的传参数量可以为若干个。传入多少个函数(包括0个),在函数的内部都是把这些参数组装成一个元组来处理。
def function(*can1): sum=0 for n in can1: sum=sum+n return sum result1=function() result2=function(1) result3=function(1,2,3) result4=function(*(1,2,3))
其运行结果为0 1 6 6
(3)关键字参数:
函数的传参数量可以为若干个,不管传入多少个参数(包括0个),函数内部都是把这些参数组装成一个字典来处理。
def function(**params): return params result1=function() result2=function(name='yanjie',score=90) result3=function(**{'name':'yanjie','score':99})
其运行结果为
{}
{'name': 'yanjie', 'score': 90}
{'name': 'yanjie', 'score': 99}
方法、函数的参数组合
在Python的传参中,有必选参数、默认参数、可变参数、关键字参数;4个参数也可以组合在一起使用。但是这4类参数是有顺序要求的,即:必选参数→默认参数→可变参数→关键字参数。建议按照以下示例的顺序传参:
def function(a,b,c=1,*param1,**params): pass