函数:一段代码的表示
def <函数名> (<参数(0个或者多个)>):#定义参数
<函数体>#函数内部包含的代码
return <返回值>#函数运行的返回值
函数定义时,指定的参数是占位符
函数定义后,不调用,程序会被执行。
函数定义时,参数是输入,函数体是处理,结果是输出。(IPO)
函数也是一段完整代码的封装。
函数的调用调用是运行函数代码的方式。
函数的传参 参数个数函数可以有参数,也可以没有,但必须保留括号。
可选参数传递函数定义时可以为某些参数指定默认值,构成可选参数
def <函数名> (<非可选参数>,<可选参数>)
<函数体>
return <返回值>
python 定义参数时,非可选参数一定要放在可选参数之前。
非可选参数--必选参数
函数定义时可以设计可变数量参数,既不确定参数总数量。
def <函数名> (<参数>,*b)
<函数体>
return <返回值>
参数的传递方式函数调用时,参数可以按照位置或者名称方式传递。
函数的返回值函数 可以返回0个或者多个结果
return 保留字用来传递返回值
函数可以有返回值,也可以没有,可以有return,也可以没有。
局部变量 全局变量区别:局部是函数内部使用的变量,函数外部整个程序使用的变量是全局变量。
规则- 局部变量和全局变量是不同变量
局部变量是函数内部的占位符,全局变量可以重名但不同
函数运算结束后,局部变量被释放,用global声明变量是全局变量。
2.局部变量为组合数据类型未创建,等同于全局变量。
组合数据类型在程序中真实创建了,就是局部变量。
lambda函数lambda函数返回函数名作为结果
lambda函数是一种匿名函数,即没有名字的函数
lambda函数定义简单,一行内表示的函数
<函数名>=lambad<参数>:<表达式> #函数的紧凑表达形式
代码复用与函数递归代码复用与模块化设计
代码复用
代码当成资源进行抽象
代码资源化:程序代码是一种用来表达计算资源
代码抽象化:使用函数等方法对代码赋予更高级别的定义。
代码复用:同一代码在需要时可以被重复使用
模块化设计
分而治之
通过函数或对象封装将程序划分为模块及模块间的表达。
具体包括:主程序 子程序和子程序间关系
分而治之:一种分而治之,分层抽象 ,体系化的设计思想。
紧耦合 松耦合
紧耦合:两个部分之间分流很多,无法独立存在
松耦合:两个部分之间交流较少,可以独立存在。
模块内部是紧耦合,模块之间是松耦合。



