为什么需要使用函数?
为了解决函数存在的问题
1.代码结构不清晰,可读性差
2.有很多冗余代码
3.后期维护性,扩展性差
基于上述问题,程序中必须有对应的解决方案就是函数
函数是什么?
函数是实现某一功能的代码的集合
如何定义函数
在程序中要想使用函数,则必须先定义函数 ,后调用函数
定义函数的语法:
def 函数的名字(参数1,..参数n):
"""
文档注释
"""
代码1
代码2
代码n
return 值
return 参数 注释可以选填
def:定义函数的关键字
函数的名字:用来查找和执行函数
文档注释:注释是给程序员看的备注信息,文档注释用于描述函数的具体细节
代码块:具体实现功能的代码,也称之为函数体
return:用于返回值给使用者
函数名加括号就能触发函数体的执行,称之为调用函数
函数可分为
有参函数
当函数体执行时需要依赖外界的数据才能完成功能
无参函数
当函数体执行时不需要依赖外界的数据就能完成功能
空函数
函数体没有实际功能,用于程序开发初期有用,可以用于定义出程序的结构
函数的调用
直接调用
表达式调用
将函数的返回值作为参数
return
函数完成某一个功能之后产生的结果给调用者
返回值没有类型限制
返回值没有个数限制
返回一个值:调用函数拿到的结果就是一个值
返回多个值:调用函数拿到的结果就是一个元组
返回0给值,或者不写return:调用函数拿到的结果就是None
return关键字,return时函数结束的标志,函数内可以有多个return,但只要执行一次整个函数就结束
定义函数阶段
申请内存空间,将函数的代码存储到内存中
把内存地址和函数名建立绑定关系
强调:函数定义阶段是不会执行函数体代码,但是会检测语法
调用函数
通过函数名找到函数的内存地址
加括号触发函数体的执行