Python3的函数式编程

本文总结了Python3的函数式编程特点,包括高阶函数、内置的map、reduce、filter、sorted函数,以及函数作为返回值和闭包的概念。通过实例解析了匿名函数和装饰器的使用,帮助理解函数式编程思想。
摘要由CSDN通过智能技术生成

参考:https://coolshell.cn/articles/10822.html             https://www.imooc.com/learn/317

用过python的闭包,装饰器,map,reduce,filter等函数,也知道可以把一个函数作为一个变量进行赋值,传递;但是还不知道这些都属于函数式编程的范畴,也一直以为这些都是理所当然的,当然,去区分我们写的程序是函数式编程的范畴还是过程式编程的范畴并不重要,而是理解它的思想,把这种思想运用到平时的项目中去。最近读了陈皓老师的博客,看了廖雪峰老师的python进阶教程,将一些python的函数式编程做一个总结。后续项目中如果有更深的体会,再更新。


目录

 

一.python的函数式编程的特点

二.高阶函数

三.Python内置的高阶函数

1.map函数

2.reduce函数

3.filter函数

4.sorted函数,自定义排序

四.函数作为返回值&闭包

1.函数作为一个函数的返回值

2.闭包

五.匿名函数

六.装饰器


一.python的函数式编程的特点

1.不是纯函数式编程,允许有变量

2.支持高阶函数,函数可以作为变量传入一个函数

3.支持闭包,函数可以作为另一个函数的返回值

4.支持匿名函数

二.高阶函数

1.变量可以指向一个函数

# 变量可以指向一个函数
f = abs  # 此时f指向python的内建函数abs
print(f(-3))  # 输出3

2.函数名其实是指向函数的一个变量,函数名和普通的变量没有什么区别

# 函数名其实是指向函数的一个变量
abs = len  # abs指向len函数
print(abs([1, 2, 3, 4]))  # 输出4
print(abs(-3))  # 程序报错

3.高阶函数是指可以接收函数作为参数的函数

# 高阶函数是指可以接收函数作为参数的函数
def add(x, y, f):
    return f(x) + f(y)
print(add(1, -3, abs)) #输出4

三.Python内置的高阶函数

1.map函数

原理:map函数接收一个函数f,和一个可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值