美文网首页
函数进阶:递归函数,纯函数,匿名函数,偏函数

函数进阶:递归函数,纯函数,匿名函数,偏函数

作者: 庄周幻梦 | 来源:发表于2020-09-18 20:16 被阅读0次

递归函数: 直接或者间接调用函数本身的函数.

# 斐波契纳 1,1,2,3,5,8,13,21,34,55,89,...
import functools
import sys


@functools.lru_cache  # (缓存装饰器防止递归深度过长耗时以及超过递归深度而报错)
def fbqn(n):
    if n == 1 or n == 2:
        return 1
    else:
        return fbqn(n-1)+fbqn(n-2)


# print(sys.getrecursionlimit())    # 打印最大递归深度的值
# sys.setrecursionlimit(20000000)   # 设置最大递归深度的值
# print(fbqn(10))

纯函数:一个函数的返回结果只依赖其参数,并且执行过程中没有副作用。

def add(a, b):
    return a+b

print(add(1, 2))

匿名函数:由一个单独 expression 构成的匿名内联函数,表达式会在调用时被求值。创建 lambda 函数的句法为 lambda [parameters]: expression

# lambda 参数:返回值

def add(a, b):
    print(a+b)

add(1,2)
add = lambda a,b:print(a+b)

add(1,2)

偏函数: functools模块partial函数,固定函数的作用。

from functools import partial
def add_4(a: int, b: int, c: int, d: int):
    res = a+b+c+d
    print(res)


add_4 = partial(add_4, c=2, d=2)

# add_4(1, 2)         # 按位置进行传参.

add_4_1 = partial(add_4, a=2, d=2)

# add_4_1(b=2,c=2)    # 按关键字进行传参.

相关文章

  • 函数进阶:递归函数,纯函数,匿名函数,偏函数

    递归函数: 直接或者间接调用函数本身的函数. 纯函数:一个函数的返回结果只依赖其参数,并且执行过程中没有副作用。 ...

  • 07 C函数

    1、why函数? 2、函数进阶 3、递归函数

  • python语法(六)

    递归 计算阶乘:递归函数一定要设置结束条件,否则就会死掉 匿名函数 匿名函数作为实参 把匿名函数当参数传入,pyt...

  • python学习_day10

    匿名函数和递归函数的使用

  • Python:6.函数式编程

    返回函数 匿名函数 装饰器 偏函数

  • Python 返回函数、匿名函数、装饰器、偏函数

    返回函数 匿名函数 装饰器 偏函数

  • Python之函数

    课程大纲 函数定义 函数的参数 函数的返回值 高阶函数 函数作用域 递归函数 匿名函数 内置函数 函数式编程 将函...

  • python 函数进阶

    函数进阶 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的...

  • python 函数进阶

    函数进阶 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的...

  • Python函数高阶

    函数进阶 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的...

网友评论

      本文标题:函数进阶:递归函数,纯函数,匿名函数,偏函数

      本文链接:https://www.haomeiwen.com/subject/apxsyktx.html