Python笔记-1
这份笔记关于匿名函数,递归函数与生成器函数
匿名函数:lambda表达式
通常是在需要一个函数,但是又不想命名的时候用,即匿名函数
lambda表达式的语法为:lambda 参数1,参数2,… ,参数n: 返回值
如下图所示:
给x,y,z分别赋值1,2,3,计算x+y+x和x+y+z
递归函数
程序调用自身的编程技巧称为递归( recursion)
代码例如:
递归函数优缺点:
优点:定义简单,逻辑清楚。
缺点:递归效率不高,因为每一次调用都有相应的数值存放在栈,而栈的空间是有限的
因此在写函数时候要注意不可无限递归或者递归次数非常大,防止栈溢出
比较循环与递归:
计算1到100之间相加之和
生成器函数
简单来说,生成器就是包含yield关键字的函数
生成器每使用yield语句产生一个值,函数就会暂停或挂起后面代码的执行,下次通过生成器对象的_next()_方法、内置函数next()、for循环遍历生成器对象元素或其他方式调用时恢复执行,继续产生新的值
例:
生成器–斐波那契
在一些情况下使用生成器可以节省存储空间
例: