默认参数指函数/方法在定义时为形参赋值,对应的形参称为默认参数。默认参数是一个参数定义期的概念,与调用无关。函数
若是参数定义默认参数,在调用函数/方法时,未对该参数进行传值,则使用默认值做为该参数的值。spa
定义格式:3d
def 函数名(形参1 = 值1,...):
函数体
......
复制代码
调用格式一(同普通参数,无特殊):code
函数名(实参) 使用实参做为形参的值,不适用默认值
复制代码
调用格式二:cdn
函数名() 使用默认值做为形参的值
复制代码
1.默认参数的定义必须在位置参数的右侧对象
函数/方法在调用时为指定名称的形参进行赋值,对应实参称关键字参数。关键字参数是一个参数调用期的概念,与定义无关。blog
按名称确认实参为指定的形参赋值。递归
定义格式(同普通参数定义,无特殊):it
def 函数名(形参,...):
函数体
......
复制代码
调用格式: 函数名(形参名 = 实参)io
1.关键字参数必须出如今位置参数的后面
函数/方法在定义时,定义一个特殊的形参,用于接收调用时传入的任意数量的实参,对应的形参称为可变参数。 可变参数是一个参数定义期与调用期都有效的概念。
简化函数定义过程,定义能够接收无数个实参的形参。形参接受到的数据,不管数量多少,包装成一个元组对象。
定义格式:
def 函数名(*args,...):
函数体
......
复制代码
调用格式(同普通参数,无特殊):
函数名(实参1,......)
复制代码
1.可变参数在一个函数/方法定义只能出现一个
函数/方法在定义时,定义一个特殊的形参,用于接收未定义直接使用的关键字参数,对应的形参称为字典参数。
简化函数定义过程,接收未定义直接使用的关键字参数。在多层级调用间进行关键字参数的逐级传递。 未定义的关键字参数,不管数量多少,接收后包装成一个字典对象。
定义格式:
def 函数名(**kwargs,...):
函数体
......
复制代码
调用格式: 函数名(未定义的变量名1 = 实参1,未定义的变量名2 = 实参2,...)
1.字典参数在一个函数/方法定义中只能出现一个
全部的容器都支持解包操做,格式:*容器变量名。部分支持自动组包,外部手动添加元组后,也可自动组包,完成运行
函数/方法在执行过程当中出现了对自身函数/方法的调用,称该过程为递归调用,称这样的函数为递归函数。
1.函数体中具备对自身函数的调用
2.函数体中具备明确的函数执行结束断定条件
Python语言中函数调用最大层级为1000层(含project函数,默认1000,可更改),超过该层级,程序将报错
匿名函数即没有名称的函数,在Python语言中,匿名函数是使用lambda关键字定义的一个特殊表达式,也成为lambda表达式。
格式一:
定义:函数名 = lambda 形参: 返回值
调用:结果 = 函数名(实参)
复制代码
定义并调用:结果 = (lambda 形参:返回值)(实参)
复制代码
无参格式:
结果 = (lambda:返回值)()
复制代码
无返回值格式:无,必须有具体值或结果为None