python函数的高级用法
一、引用传递
引用传递,实质是在传递内存地址
二、函数默认值
1、默认值参数
在python中可以为函数的参数给予默认值,一旦某个存在默认值,那么如果在调用的时候,不传递这个参数,则按照默认值
注意:在定义函数时,如果存在有默认值的参数,一定要写在没有默认值的参数后面,
否则在调用时,无法确定参数到底传给哪个参数,程序就会报错。
三、全局变量和局部变量
1、全局变量
就是定义在py文件中,能被任何函数、类能够正常访问的变量。
2、局部变量
定义在函数内部的变量,叫做局部变量
注意: 局部变量无法修改,若想修改则需要用global关键字,申明这是全局变量
四、可变参数及命名参数
1、可变参数
*(参数名称)
2、命名参数
**(参数名称)
3、两种参数混合使用
五、匿名函数
用 lambda 表达式实现
优点:简化代码书写
缺点:降低了代码的可读性,增加代码的维护成本
六、递归
函数自己调用自己函数,所以一定要有终止条件,不然就死循环