6. 函数式编程介绍函数是 Python 内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计。函数就是面向过程的程序设计的基本单元。而函数式编程(请注意多了一个“式”字)—— Functional Programming, 虽然也可以归结到面向过程的程序设计,但其思想更接近数学计算。(指的是数学中的编程)我们首先要搞明白计算机(Computer)和计算(Compute)的概念。在计算机的层次上,CPU执行的是加减乘除的指令代码,以及各种条件判断和跳转指令,所以,汇编语言是最贴近计算机的语言。而计算则指数学意义上的计算,越是抽象的计算,离计算机硬件越远。对应到编程语言,就是越低级的语言,越贴近计算机,抽象程度低,执行效率高,比如C语言(C语言本身也不支持面向对象);越高级的语言,越贴近计算,抽象程度高,执行效率低,比如Lisp语言。函数式编程就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确定的,输出就是确定的,这种纯函数我们称之为没有副作用。而允许使用变量的程序设计语言,(比如 y = 2x    y = 2+4)由于函数内部的变量状态不确定,同样的输入,可能得到不同的输出,因此,这种函数是有副作用的。 (比如 y =f(2)   y = f(3))y = f(2,4)   6y = f(2,6)    if x+y>7:        return 0Python 对函数式编程提供部分支持。由于Python允许使用变量,因此,Python 不是纯函数式编程语言。所以不建议通过 Python 学习函数式编程,如果想学函数式编程,可以学习 HarshShell? erlang?lisp? 这些语言中,只能用函数式编程。一、定义简单说,“函数式编程”是一种“编程范式”(Programming paradigm),也就是如何编写程序的方法论。主要思想是把运算过程尽量写成一系列嵌套的函数调用。举例来说,现在有这样一个数学表达式:(1+2)*3-4传统的过程式编程,可能这样写:var a = 1+2;var b = a*3;var c = b-4;函数式编程要求使用函数,我们可以把运算过程定义为不同的函数,然后写成下面这样:var result = subtract(multiply(add(1,2),3),4):这就是函数式编程。如果真想学函数式编程,不要学 python,推荐 erlang最火的编程范式,就是 面向对象。

更多相关文章

  1. 20201203 高阶函数
  2. JavaScript面向对象编程理解
  3. 干货丨DolphinDB通用计算教程
  4. python入门之 字典算法实现及操作
  5. DolphinDB脚本语言的混合范式编程
  6. 闭包函数及其应用
  7. 特斯拉AI团队招聘!马斯克:我不在乎学历,但编程测试得过
  8. 函数-对象、嵌套、名称空间与作用域
  9. 函数的递归

随机推荐

  1. android通过更改hosts免优酷广告方法
  2. android之动态更改屏幕方向的简单例子(LA
  3. Android对移动计算的影响及产业变革
  4. 【Android UI设计与开发】第06期:底部菜单
  5. 做自己的Android ROM,屏蔽对framework中的
  6. Android手把手视频教程 | 课程简介
  7. Android API Guides---Localizing with R
  8. Android主题theme和样式style总结
  9. Android 进程和线程模型 .
  10. Adapter