首页 > 编程语言 >python基础-函数式编程

python基础-函数式编程

时间:2022-08-19 16:01:32浏览次数:60  
标签:闭包 return 函数 python 编程 ret store 变量

概念:

  • 电脑运算视作数学上的函数计算
  • 高阶函数:map,reduce,filter
  • 无副作用,相同的参数调用时钟产生同样的结果

闭包Closure

例子:

def cache(func):
  store = {}  # 外部自由变量
  @wraps(func)
  def _ (n):  # 闭包函数
    if n in store:
      return store[n]
    else:
      ret = func(n)
      store[n] = ret
      return ret
  return _

def f(n):
  if n<=1:
    return 1
  return f(n-1) + f(n-2)

闭包:引用了外部自由变量的函数
自由变量:不在当前闭包函数定义的变量
特性:自由变量会和闭包函数同时存在

标签:闭包,return,函数,python,编程,ret,store,变量
From: https://www.cnblogs.com/aleiyoy/p/16602264.html

相关文章

  • 第7章 面向对象编程(基础部分)
    ​7.1 类与对象oop     问题:编写一个程序,输入猫名字,显示该猫的名字,年龄,颜色     现有技术:单独定义变量、数组;缺点:不利于数据管理,效率低   ......
  • 练习7:函数记忆相关
    何为函数记忆函数记忆是指将上次的计算结果缓存起来,当下次调用时,如果遇到相同的参数,就直接返回缓存中的数据。常用于,复杂且有重复的计算。例如:斐波那契数列的计算under......
  • @FunctionalInterface 函数式接口
    作用:在编译过程中,校验该接口只有一个抽象方法;解释:除了唯一的抽象方法外,可以包含已经有实现的方法(包括静态方法);使用:可以使用Lambda表达式来表示该接口的一个实现:@Functi......
  • python将代码打包成whl或者压缩文件使用pip安装
    需要条件:安装setuptools,wheel创建目录helloworld—init.py—代码1.py—代码2.pysetup.py编辑__init__.pyfromhelloworldimport代码1,代码2在helloworld同级下......
  • python生成随机码-转至武沛齐老师
      Python生成随机验证码,需要使用PIL模块.安装:1pip3installpillow基本使用1.创建图片123456789from PIL import I......
  • Python中,函数的返回值
    deffun(num):odd=[]#存奇数even=[]#存偶数foriinnum:ifi%2:odd.append(i)else:even.append(i)re......
  • python激活
    Pycharm又过期了怎么办? 方法一:(亲测可用)1、打开网址: lookdiv.com 2、在输入框输入钥匙:lookdiv.com3、点击“获取激活码”按钮,获取激活码 4.激活后可以使用几......
  • python-zip()函数-zip*函数-压缩-解压缩
    python-zip()函数-压缩-解压缩zip()函数:将多个序列(列表、元组、字典、集合、字符串以及range()构成的列表)按一定规则重新组成一组元组。常与list()函数搭配使用,list......
  • python中的@的使用
    在python中,@是一个装饰器,针对某个函数,起调用传参的作用。具体怎么用的可以参考如下代码:defA(fn):print("a")fn()defB():print("b")@AdefC():......
  • python数据类型---字典dict
    python数据类型---字典dict1.基本认识字典是Python里一种常用的数据类型,键值对,keyvalue对,它用于存放具有映射关系的数据。字典中的数据是无顺序的。。。。。。d={key......