Python递归函数与匿名函数

  • 递归函数

Python对递归的深度有限制,超过即会报错。所以一定一要注意跳出条件。

#斐波拉契数列
#一个数列,第一个数是1,第二个数也是1,从第三个数开始,每一个数是前两个数之和
#公式:f(1) =1, f(2) = 1, f(3) = f(1) + f(2), ..., f(n) = f(n-2) + f(n-1)
#例如:1, 2, 3, 5, 8, 13, 21...

def fib(n):
    if n == 1:
        return 1
    elif n == 2:
        return 1
    else:
        return fib(n-2) + fib(n-1)

print(fib(6))
  • 匿名函数
#匿名函数,计算n的n次方
f = lambda n:n**n
print(f(2)) #输出结果为4
print(f(3)) #输出结果为27

语法:函数名= lambda 参数1,参数2,参数3:返回值
注意:

  1.函数的参数可以有多个,多个参数之间用逗号隔开

  2.匿名函数不管多复杂,只能写一行,且逻辑结束后直接返回数据

  3.返回值和正常的函数一样,可以是任意数据类型

原文地址:https://www.cnblogs.com/mryanzhao/p/9486139.html

时间: 2024-08-11 18:13:49

Python递归函数与匿名函数的相关文章

Python之路Python作用域、匿名函数、函数式编程、map函数、filter函数、reduce函数

Python之路Python作用域.匿名函数.函数式编程.map函数.filter函数.reduce函数 一.作用域 return 可以返回任意值例子 def test1(): print("test1") def test(): print("test") return test1 res = test() print(res) 输出结果 test <function test1 at 0x021F5C90> 分析:这里print(res)输出的是te

day05 协程函数,递归函数,匿名函数lambda,内置函数map reduce filter max min zip sorted,匿名函数lambda和内置函数结合使用,面向过程编程与函数编程,模块与包的使用,re模块内置函数

基础篇 本章大纲: 协程函数 递归函数 匿名函数lambda 内置函数map reduce filter  max min zip sorted 匿名函数lambda和内置函数结合使用 面向过程编程与函数编程 模块与包的使用 re模块内置函数 一,协程函数 注意:函数先定义,后使用.这是函数第一原则.函数主要分为定义,调用 1.1,什么是协程函数 协程函数特点:yield变为表达式,可以通过g.send(value)传值,用send传值时协程函数需要初始化,也可以说是生成器函数的一种 1.2,协

Python的lambda匿名函数

lambda函数也叫匿名函数,即,函数没有具体的名称.先来看一个最简单例子: def f(x):return x**2print f(4) Python中使用lambda的话,写成这样 g = lambda x : x**2print g(4) lambda表达式在很多编程语言都有对应的实现.比如C#: var g = x => x**2Console.WriteLine(g(4)) 那么,lambda表达式有什么用处呢?很多人提出了质疑,lambda和普通的函数相比,就是省去了函数名称而已,同

python学习之---匿名函数,返回函数,偏函数

1. 返回函数: 所谓的返回函数,指的是函数作为返回值.高阶函数除了可以接受函数作为参数外,同样可以接受函数作为结果返回.以下是一个可变参数的求和例子,一般求和函数是如此这般定义的: 1 >>> def sum(*args): 2 ... ax = 0 3 ... for x in args: 4 ... ax += x 5 ... return ax 6 ... 以上函数一旦定义,在调用这个函数的时候,只要传入参数就会立刻执行.但是,如果条件需要不要立刻求和,而是在后面的代码中,根据需

Python学习 之 匿名函数

1.匿名函数(lambda函数):lambda函数是一种快速定义单行的最小函数,是从Lisp借用来的,可以用在任何需要函数的地方. 普通函数定义如下: def f(x,y): return x*yf(2,3) lambda函数定义如下: g=lambda x,y:x*yg(2,3) 2.使用lambda函数的好处 (1)使用Python写一些执行脚本时,使用lambda可以省去定义函数的过程,让代码更加精简. (2)对于一些抽象的,不会在别的地方再复用的函数,有时候给函数起个名字是个难题,用la

14、内置函数、递归函数、匿名函数

一.内置函数 # print(abs(-1))# print(all([1,2,3]))# print(all([0,2,3])) # print(all('')) # print(any([0,None,'',1]))# print(any([0,None,'']))# print(any([])) # print(bin(3))# print(hex(17))# print(oct(9)) #0 None 空===>bool值为False,其余都为True # def func():# pa

python基础之匿名函数、内置函数

一 匿名函数 匿名函数就是不需要显式的指定函数. lambda的主体是一个表达式,而不是一个代码块.仅仅能在lamba表达式中封装有限的逻辑进去. 语法:lambda函数的语法只包含一个语句,如下: lambda [arg1 [,arg2,.....argn]]:expression 先来个简单得: #这段代码 def calc(n): return n**n print(calc(10)) #换成匿名函数 calc = lambda n:n**n print(calc(10)) 换个高级点得:

递归函数、匿名函数

一.递归函数,就是自己调用自己 def func(): print('hh') func()func()#这是个死循环,递归最多循环999次 ====递归应用举例=== def func(): num = int(input('num:')) if num % 2 ==0: print('是偶数') return else: func() func() #循环判断是否是偶数,奇数的话继续调用 二.匿名函数 lambda x:x+1 #定义一个匿名函数,只用一次,函数名不存入内存.冒号前是入参,冒

Python 函数式编程--匿名函数Lambda

1.1   匿名函数 有些时候,不需要显式地定义函数,直接传入匿名函数更方便. >>> list(map(lambda x:x*x, (1, 2, 3, 4, 5))) [1, 4, 9, 16, 25] 冒号前面的x表示函数参数. 匿名函数有个限制,就是只能有一个表达式,不用写return,返回值就是该表达式的结果. >>> f = lambda x: x * x >>> f(2) 4 >>> def build(x, y): ..