Python_11函数递归、匿名函数、内置函数
1、函数的递归:
函数的递归,在函数嵌套调用其它函数时,有一种特殊情况,就是直接或间接地调用了函数本身,这样的一种情况称为函数的递归调用。Python在递归中没有像别的语言对递归进行优化,所以它每一次调用都会基于上一次的调用进行,并且它设置了最大递归数量防止递归外溢。
1 #函数的递归 2 def fun(): #函数的递归调用,直接调用 3 print('hello') 4 fun() 5 # fun() 6 7 def foo(): #函数的递归调用,间接调用 8 print('foo') 9 bar() 10 def bar(): 11 print('bar') 12 foo() 13 # foo() 14 15 # ******************************* 16 def num(n): 17 if(n==1): 18 return 1 19 else: 20 return num(n-1)+2 21 # print(num(3)) 22 # ******************************* 23 24 def num(n): 25 if(n<=1): 26 return 1 27 else: 28 return num(n-1) + num(n-2) + 2 29 print(num(5)) #递归比较庞大 30 31 32 # num(5)22 33 # num(4)13 + num(3)7 + 2 34 # num(3)7 + num(2)4 +2 +num(2)4 + num(1)1 +2 35 # num(2)4 + num(1)1 +2 +num(1)1 + num(0)1 +2 +num(1) + num(0) +2 36 # num(1)1 + num(0)1 +2
2、匿名函数、内置函数
用lambda关键词能创建小型匿名函数。这种函数得名于省略了用def声明函数的标准步骤。Lambda函数能接受任何数量的参数但只能返回一个表达式的值,同时不能包含命令或多个表达式。匿名函数不能直接调用Print,因为lambda需要一个表达式。lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局名字空间里的参数。
Python内置函数就是python标准库里(语言自身携带的)函数(公共函数),一般各种语言中都会预先定义常用的内置函数。因为内置函数使用的比较频繁,所以通过内置函数的方式提供出来。
Python中内置函数大致包含如下类型:数学运算、类型转换、对象操作、反射操作、变量操作、交互操作、编译执行、装饰器。
1 #函数的递归、匿名函数、内置函数 2 def add1(a,b): 3 return a+b 4 print(add1(3,4)) 5 6 #匿名函数直接省略了def声明函数的标准步骤,Lambda函数能接收任何数量的参数但只能返回一个表达式的值,同时不能包含命令或多个表达式。 7 #匿名函数不能直接调用print(),因为lambda需要一个表达式。 8 add2 = lambda a,b:a+b #lambda a,b:print()不能直接调用 9 print(add2(7,8)) 10 11 12 13 #内置函数如下,就列举一下,之前我们都有用到过,就列举一下,就不一一实际举例了 14 #类型转换 15 # int() 16 # float() 17 # str() 18 19 #序列操作 20 # sorted() 21 # reversed() 22 # next() 23 24 #交换操作 25 # print() 26 # input()
原创不易,转载请说明出处http://www.cnblogs.com/yyym 谢谢!