三元表达式:
判断条件+条件成立的结果+条件不成立的结果
函数递归:
函数的递归调用,即在函数调用的过程中,又直接或者间接调用了函数本身
例:
直接调用
def foo():
print('from foo')
foo()
foo()
间接调用
def bar():
print('from bar')
foo()
def foo():
print('from foo')
bar()
foo()
递归分为两个阶段:1,回溯:一定要在满足某种条件结束回溯,否则会无限递归
2,递推
例:
def age(n):
if n == 1:
return 18
return age(n-1)+2 #age(4)+2
age(5)
注意:1,递归一定要有一个明确的结束条件
2,每进入下一次递归,问题的规模都应该减少
3,在python中没有尾递归优化
匿名函数
匿名函数就是没有函数名的函数,它的应用场景是该函数只使用一次
强调:
1,匿名的目的就是要没有名字,为匿名函数附上函数名是没有意义的事情
2,匿名函数的参数规则,作用域关系与有名函数是一样的
3,匿名函数的函数体通常应该是一种表达式,该表达式必须有一个返回值