美文网首页
函数式编程

函数式编程

作者: crystalcd | 来源:发表于2018-06-10 21:34 被阅读52次

函数式编程

  1. 函数式编程的特点:允许把函数本身作为参数传入另一个函数,还允许返回一个函数
  2. 把函数作为参数传入,这样的函数成为高阶函数,函数式编程就是指这种高度抽象的编程范式。

map/reduce

  1. map()函数接收两个参数,一个是函数,一个是可迭代对象,map将传入的函数一次作用到序列的每个元素,并把结果作为新的迭代对象返回。

  2. reduce把一个函数作用在一个序列[x1, x2, x3, ...]上,这个函数必须接收两个参数,redece把结果继续和序列的下一个元素做累计计算

     reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
    

filter

  1. filter()用于过滤序列, 和map()类似,filter()也接收一个函数和一个序列。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素

sorted

  1. sorted()函数是一个高阶函数,它还可以接收一个key函数来实现自定义的排序

     sorted([36, 5, -12, 9, -21], key = abs)
    
  2. 若要进行反向排序,不必改动key函数,可以传入第三个参数reverse=True

相关文章

  • RxSwift初探(1)

    一、前提:函数响应式编程思想 简单来说 函数响应式编程 = 函数式编程 + 响应式编程 (1)函数式 函数式编程是...

  • iOS 函数编程 & 链式编程

    函数式(链式)编程 函数式编程概念 函数式编程是种编程范式 函数式编程 Functional Programmin...

  • 函数式编程(一)—— 前置知识

    为什么要学函数式编程? 什么是函数式编程?函数式编程和面向对象编程的不同对于函数式编程思维方式的理解: 函数式编程...

  • 二十二、函数式编程、面向协议式编程

    函数式编程(Functional Prigramming) 函数式编程 函数式编程(Functional Prig...

  • Python中的函数式编程

    函数式编程 说到函数式编程,我们的重点在于为什么要采用函数式编程,而不是什么是函数式编程。 函数式编程的优点:一、...

  • RxSwift-初探

    函数响应式编程 一:函数式 函数式编程简称FP(Functional Programming),函数式编程就是一种...

  • 《Kotlin入门实战》CH5 | 函数与函数式编程

    函数与函数式编程 函数式编程与命令式编程最大的不同是:函数式编程的焦点在于数据的映射,命令式编程(imperati...

  • 函数响应式编程思想 & RxSwift 核心逻辑(一)

    函数响应式编程思想 函数响应式编程思想即是将函数式编程和响应式编程相结合。 函数式编程 顾名思义,就是像函数一样的...

  • RxJava系列|RxJava简介(一)

    函数响应式编程 函数式编程是一种编程范式。 常见的编程范式有:命令式编程、函数式编程和逻辑式编程。 面向对象就是一...

  • 了解C# 函数式编程

    什么是函数式编程 函数式编程是一种编程范式,维基百科对函数式编程定义如下: 函数式编程(英语:functional...

网友评论

      本文标题:函数式编程

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