1、定义
2、构成
3、函数的分类
4、函数的参数模型
5、变量作用域
6、递归
一、定义:
函数是组织好的、可以实现特定功能的、能够被重复使用的代码集合
在编程中的意义:就是代码复用
二、构成:
1、python中定义函数:
def 函数名([参数列表]):
#函数体
#[return 返回值]
2、函数的调用:
函数名称([参数列表]) #先执行函数体的功能,再将函数体变为返回值
函数调用的本质:
函数默认存储在堆中,当调用后,会压栈(push)到栈中执行
执行完成后,要立刻执行弹栈(出栈,pop)操作
三、函数的分类:
内置函数:python中已经定义好了的函数 ,(比如:print(),input(),int())可以直接使用函数名
自定义函数:自定义的函数名不要和关键字以及内置函数名相同
自定义函数又分为:有没有参数,有没有返回值俩个类型
四、函数的参数模型:
位置参数:def fun(a,b,c): #多个参数用逗号隔开,传参顺序和数量要一致
默认值参数:def func(a='A',b=False,c=3),为参数设置默认值,须在位置参数和不定长参数后面,调用时也可修改默认值,该参数如果不传实参,则默认有个值,如果传递了,则按照传递的参数来处理
可变参数:def func(*args)使用*标识符,可以传0~N个参数,以元组形式接受
命名参数:关键字参数**kwargs
五、变量作用域:
全局变量(global variable):直接定义在模块(py文件)中的变量,可在全局内生效
局部变量(local variable):定义在函数内部的变量,只能在函数内部生效,可以使用global语句变为全局变量
注意:在python中,全局变量,不允许在函数中修改!!!!
但是如果有需要在函数中修改全局变量,也是可以的,
但是必须要提前申明!!!
申明修改全局变量:关键字global:
global 变量名称
六、递归:
递归,recursion:
函数自身调用自身被称为递归
递归:
1、函数自身调用自身
2、终止条件
如果没有终止条件,递归会形成死循环