一、位置传参#位置传递实例:deffun1(a,b,c):returna+b+cprint(fun1(1,2,3))'运行运行输出:6二、关键字传参根据每个参数的名字写入函数参数#关键字传递deffun2(a,b,c):returna+b+cprint(fun2(1,c=3,b=2))输出:6三、参数默认值传参给函数的输入参数设定一个默认值,如果该参数最终没有输入,则使用默认参数出入函数.#默认值传递deffun3(a,b=2,c=3):returna+b+cprint(fun3(a=1))6四、包裹传参在定义函数时,我们有时候并不知道调用的时候会传递多少个参数。这时候,包裹(packing)位置参数或者包裹关键字参数来进行参数传递会非常有用。deffun4(*name):print(type(name))print(name)fun4([1,2,3])fun4((1,2,3))fun4(1,2,3)在fun4的参数表中,所有的参数被name收集,根据位置合并成一个元祖(tuple),这就是包裹位置传递。([1,2,3],)((1,2,3),)(1,2,3)五、解包裹传递deffunc1(a,b=1,*c,**d):print(a,b,c,d)l=[3,4]dic={'@':2,'#':3}func1(1,2,l,dic)print("---------**------------")func1(1,2,*l,**dic)func1(1,2,3,4,**dic)'运行运行12([3,4],{‘@’:2,‘#’:3}){}---------**------------12(3,4){‘@’:2,‘#’:3}12(3,4){‘@’:2,‘#’:3}
|