函数是"第一等公民"
所谓"第一等公民"(first class),指的是函数与其他数据类型一样,处于平等地位,可以赋值给其他变量,也可以作为参数,传入另一个函数,或者作为别的函数的返回值。
简单说,“函数式编程"是一种"编程范式”(programming paradigm),也就是如何编写程序的方法论。
它属于"结构化编程"的一种,主要思想是把运算过程尽量写成一系列嵌套的函数调用。
把函数作为参数传入,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式。
就在今天去理解python里面的所谓的
高阶函数这一概念的时候突然明白
函数式编程的内部原理就是数学中的复合函数f(g(x))
'''
创作人liChenXin
发现了原来函数式编程的核心思想是--math中的复合函数 f(g(x))
'''
def a():
return ('hello a')
# 每个函数都有一个返回值才完整
def b(c):
print(c)
return ('hello b')
print("here",b(a()))
复合函数的定义-来源
设y是u的函数 ,u是x的函数 ,如果 的值全部或部分在 的定义域内,则y通过u成为x的函数,记作 ,称为由函数 与 复合而成的复合函数。
如 等都是复合函数。
而 就不是复合函数,因为任何x都不能使y有意义。由此可见,不是任何两个函数放在一起都能构成一个复合函数。
复合函数通俗地说就是函数套函数,是把几个简单的函数复合为一个较为复杂的函数。复合函数中不一定只含有两个函数,有时可能有两个以上,如y=f(u),u=φ(v),v=ψ(x),则函数y=f{φ[ψ(x)]}是x的复合函数,u、v都是中间变量。