知识点1:函数的定义
def <函数名>(<参数(0个或者多个)>)
<函数体>
return <返回值>
可选参数传递:可选参数一定要在非可选参数后面。
可变参数传递:函数定义时可以设计可变数量参数,既不确定参数总数量。
def <函数名>(<参数>,*b)
<函数体>
return<返回值>
知识点2:函数的调用
函数名(给定参数)
知识点3:函数参数传递的两种方式
位置传递:fact(10,5)
名称传递:fact(m=5,n=10)
知识点4:函数的返回值
函数可以返回0个值或者多个值
返回多个值时,以元组类型返回
知识点5:局部变量和全局变量
1.局部变量是函数内部的占位符,与全局变量可能重名但不同
函数运算结束之后,局部变量被释放,若想在函数内部使用全局变量,使用保留字global
2.局部变量为组合数据类型且未创建,等同于全局变量。未创建指的是没有在函数内部创建就引用了外部的组合数据类型,原因是组合数据类型是用指针实现的
知识点6:lambda函数
lambda函数是一种匿名函数,既没有名字的函数,使用lambda保留字定义,函数名是返回结果,
lambda函数用于定义简单的,能够在一行内表示的函数
eg. <函数名> = lambda<参数>:<表达式>
知识点7:代码复用
代码资源化:程序代码是一种用来表达计算的“资源”
代码抽象化:使用函数等方法对代码赋予更高级别的定义
代码复用:同一份代码在需要时可以被重复使用