一、什么是返回值
概念
返回值就是从函数内部传递到函数外部的数据;
返回值就是return关键字后面的表达式的值;
返回值就是函数调用表达式的值。
return关键字
return是只能在函数体中使用的关键字, 作用有两个:
- 确定函数的返回值(return后面是什么, 函数的返回值就是什么)
- 提前结束函数(只要遇到return, 整个函数直接结束)
注: 如果执行函数的时候没有遇到return, 那么函数的返回值就是 None
如:print()就没有返回值
函数调用表达式
调用函数的表达式就是函数调用表达式; 当函数调用结束后, 函数调用表达式的值就是函数的返回值
二、怎么确定函数是否需要返回值
看实现函数的功能会不会产生新的数据.如果有就将这个新的数据作为返回值返回
注: 用变量保存函数调用表达式的值, 其实就是保存函数的返回值
返回值对应的数据能做的事情, 函数调用表达式都可以做
三、函数调用过程(执行过程)(重要!!!)
第一步: 回到函数定义的位置
第二步: 传参(用实参给形参赋值;传参的时候必须保证每个参数都有值)
第三步: 执行函数体
第四步: 执行完函数体确定返回值
执行完函数体: a.执行到函数体的最后一条语句(自然死亡)
b.遇到return
怎么确定返回值: 看函数执行完成的时候有没有遇到return, 如果遇到了返回值
就是return后面的值;
没有遇到return返回值是None
第五步: 回到函数调用的位置接着往后执行(这个时候函数调用表达式的值就是函数的返回值)
四、多个返回值
函数的返回值永远都只有一个, 如果要同时返回多个数据, 就返回一个容器. 常用元组
如果一个函数要同时返回多个, 将多个数据作为一个元组中的元素返回