• 函数式编程工具:filter和reduce


    # -*- coding: utf-8 -*-
    #python 27
    #xiaodeng
    #函数式编程工具:filter和reduce
    
    
    #python内置函数中,map函数是用来进行函数式编程这类工具最简单的内置函数代数
    
    
    
    #函数式编程含义:
    #一种编程范式,也就是如何编写程序的方法论,是一种编程思想。
    #无法给予准确的定义
    #函数式编程的编程风格强调表达式计算,而不是执行命令。
    
    
    
    #常见函数式编程
    #filter:基于某一测试函数过滤出一些元素
    #reduce:对每对元素都应用函数并运行到最后结果,两者都返回可迭代对象
    
    
    
    #页码:523
    #filter, 过滤
    print list(filter((lambda x:x>0),range(-5,5)))#[1, 2, 3, 4]
    
    #以上等价于:
    res=[]
    for x in range(-5,5):
        if x>0:
            res.append(x)
    #为什么在print res时没有缩进呢?因为res他的定义是顶格的,如果print不是顶格,那么两者之间必然存在输出结果的差异
            
    print res#[1, 2, 3, 4]
    
    
    
    #reduce函数
    #一对元素两两运行得到其结果
    print reduce((lambda x,y:x+y),[1,2,3,4])#10
    print reduce((lambda x,y:x*y),[1,2,3,4])#24
    
    
    #编写函数通用设计原则:
    1)函数尽可能小,尽可能自包含、有单一、统一的用途
    2)出入参数和返回值等其他部分相互通信--通信的功能
  • 相关阅读:
    Tomcat项目部署
    java 项目时间和服务器时间不一致
    初始bat命令
    前端入门学习路线
    后台报错java.lang.IllegalArgumentException: Invalid character found in the request target.
    mysql
    java运行时数据区
    java 静态初始化块,初始化块,构造器执行顺序
    java byte和char
    springboot加载外部的配置文件
  • 原文地址:https://www.cnblogs.com/dengyg200891/p/4909646.html
Copyright © 2020-2023  润新知