品易云推流 关闭
文章详情页
文章 > Python常见问题 > python是函数式语言么

python是函数式语言么

函数式编程

头像

silencement

2019-10-26 15:35:492407浏览 · 0收藏 · 0评论

函数式编程:functional,是一种编程范式。

函数式编程的特点:

1.  把计算视为函数而非指令
2. 纯函数式编程:不需要变量,没有副作用,测试简单
3. 支持高阶函数,代码简洁

Python支持的函数式编程:

不是纯函数式编程:允许有变量
支持高阶函数:函数也可以作为变量传入
支持闭包:有了闭包就能返回函数
有限度地支持匿名函数

高阶函数(能接受函数做参数的函数)

变量可以指向函数,例子:

f = abs
print(f(-2))

函数名实际上就是指向函数的变量, 函数名与普通的变量并没有什么区别,只是它指向的是一个函数对象:

abs = len
print(abs([1,2,3,4,5]))

如上:

(1)变量可以指向函数

(2)函数的参数可以接受变量

(3)一个函数可以接受另一个函数作为参数

(4)能接受函数作为参数的函数就是高阶函数

例子

def HF(x,y,f):
    return f(x) + f(y)
 
test = HF(x = -1, y = 2, f = abs)
print(test)

更多学习内容,请点击python学习网

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图