lambda 表达式和匿名函数 lambda 表达式可以用来声明匿名函数。lambda 函数是一种简单的、在同一行中定义函数 的方法。lambda 函数实际生成了一个函数对象。 lambda 表达式只允许包含一个表达式,不能包含复杂语句,该表达式的计算结果就是函数 的返回值。 f = lambda a,b,c:a+b+c print(f) print(f(2,3,4)) g = [lambda a:a2,lambda b:b3,lambda c:c*4] print(g0,g1,g2) eval()函数 功能:将字符串 str 当成有效的表达式来求值并返回计算结果。 语法: eval(source[, globals[, locals]]) -> value 参数: source:一个 Python 表达式或函数 compile()返回的代码对象 globals:可选。必须是 dictionary locals:可选。任意映射对象 s = “print(‘abcde’)” eval(s) a = 10 b = 20 c = eval(“a+b”) print? dict1 = dict(a=100,b=200) d = eval(“a+b”,dict1) print(d) 递归函数 递归函数指的是:自己调用自己的函数,在函数体内部直接或间接的自己调用自己。递归类 似于大家中学数学学习过的“数学归纳法”。 每个递归函数必须包含两个部分:
- 终止条件
表示递归什么时候结束。一般用于返回值,不再调用自己。 - 递归步骤
把第 n 步的值和第 n-1 步相关联。 递归函数由于会创建大量的函数对象、过量的消耗内存和运算能力。在处理大量数据时,谨 慎使用。
|