一、函数的参数的形参和实参形参:函数在定义的时候函数名后面的括号中定义的参数叫做形式参数。【变量名:origin_list element】
实参:函数在调用的时候括号内传入的参数叫做实际参数。【变量的值:['hello' , 'world'] 'python'】
二、位置参数位置参数:又叫必备参数&必需参数,表示的是形式参数和实际参数之间的关系;调用的时候形式参数和实际参数要按照顺序一 一对应,不能多传,也不能少传,位置一样
三、默认参数默认参数:在函数定义的时候,给形式参数一个缺省值(默认值),在函数调用的时候没有传入该参数的实际参数时,则直接使用这个缺省值;在函数调用的时候,若传入了该参数的实际参数,则默认值不会生效;
默认参数的作用:默认参数可以简化函数调用的过程,只需要传入少量参数就可以实现调用的过程;
默认参数必须放到位置参数的后面,否则会报语法错误:SyntaxError
四、关键字参数
关键字参数:也是相对于位置参数来讲的,在函数调用的时候使用关键字参数;关键字的名字需要从形式参数中去选择,也即是在调用的时候,赋值时需要带上变量的名称
关键字参数的作用:可以提高函数的调用时候的可读性,更容易理解实际参数的意义
关键字参数和位置参数的区别:关键字参数在调用时可以不按照顺序进行传参,可以交换顺序
关键字参数也必须放到位置参数的后面
五、不定长参数不定长参数:不限定长度的参数,可以传0个,也可以传任意个,有两种表现形式:*args 和 **kwargs
1、*args:表示位置不定长参数,用来接收不定长度的位置传参,也即是接收函数调用的时候多余的位置参数
2、**kwargs【key world args】:表示关键字不定长参数,用来接收不定长度的关键字传参,也即是接收函数调用时多余的关键字参数
3、*args在函数内部的表现形式是元组,**kwargs在函数内部的表现形式是字典
4、*args加在其他位置参数的后面,**kwargs加在*args的后面,否则会报错
5、在函数中可以只有一个*args或者是**kwargs,不能有多个,会报错也没意义
6、 使用args是为了提高代码可读性,实际上可以替换成其他任何字符