-
函数的返回值:将函数内部的数据传到到函数外部的值
1)返回值:函数体内return后的值就是函数返回值,默认返回None
2)return:关键字,用于函数内,结束函数,并向函数外部传递值
3)获取返回值:函数调用表达式的值就是函数的返回值
-
函数调用过程:
1)执行过程:
a. 回到函数声明位置
b. 传参
c.执行函数体
d.执行完函数体,确定返回值:是否遇到return
e.回到函数调用位置:这时函数调用表达式的值才是函数返回值
2)内存变化:函数的调用过程是一个压栈的过程,调用函数时系统会自动在栈区间开辟一个专用内存区域,专门用来保存函数中声明的变量和产生的数据,函数调用结束时,内存区域会自动销毁,并扔出返回值
-
变量的作用域:变量可以使用的范围
1)全局变量:声明在函数或者类外部的的变量;用域是从声明开始都文件结束
2)局部变量:声明在函数内部的变量(包括形参);作用域从声明开始到函数结束;
3)global和nonlocal:只能在函数体中使用
global:在函数中给变量赋值前加‘global 变量名’,声明全局变量
nonlocal:在函数中给变量赋值前加‘nonloacal 变量名’
-
匿名函数:lambda,除了声明语法外其他语法基本适用于匿名函数
1)声明:lambda 参数列表:返回值
2)说明:功能有限(不支持类型说明),结合高阶函数使用
lambda:关键字,固定写法
参数列表:形参,参数名1,参数名2...
返回值:相当于return语句
3)调用:函数名 = lambda 参数列表:返回值 ---> 函数名()
-
递归函数:声明函数调用函数本身,可以实现循环效果,消耗内存,尽量别用
1)使用:使用条件触发=递归函数能力-循环能力
a. 设置临界值:循环结束条件,并且保证函数结束
b. 找关系:f(n)和f(n-1)的关系
c. 假设函数功能已经实现,通过f(n-1)去实现f(n)的功能
2019-11-15-Python函数进阶
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 这是16年5月份编辑的一份比较杂乱适合自己观看的学习记录文档,今天18年5月份再次想写文章,发现简书还为我保存起的...
- 原文链接:https://github.com/EasyKotlin 值就是函数,函数就是值。所有函数都消费函数,...