python函数式编程

本文介绍了Python中的函数式编程思想,包括高阶函数、map、reduce、filter、sorted的使用,以及返回函数、闭包、nonlocal、匿名函数lambda、装饰器和偏函数的概念与实践。通过实例解析,帮助读者掌握函数式编程的魅力。
摘要由CSDN通过智能技术生成

大家好

这里还还还是长弓

                                          

今天我们来讲讲python中的函数式编程

目录

函数式编程

高阶函数

map

reduce

 filter

sorted

返回函数

闭包

nonlocal使用

匿名函数lambda

装饰器

偏函数


函数式编程

有些同学疑惑了,我们已经学了函数,为什么还要学这个函数式编程呢?

两者的区别是什么呢?

函数是一个语法,函数式编程是一种编程的思路

是将本是CPU加减乘除的过程封装成一个个函数,调用函数的过程,更整体,更人性

                                       

函数式编程允许传入一个函数作为函数参数,返回值可以为一个函数

高阶函数

我们之前学习函数时,学习了很多很多类型参数,本质是将一个个变量传递到函数内部,那我们传一个特殊的变量,函数参数也是函数,即是高阶函数。

我们单独输入函数名得到结果和将函数名赋值给a得到相同结果,所以abs其实和a一样,只是一个指向函数本体的变量。过程如下图

明白了原理,我们动手写一个高阶函数(返回x三次方的绝对值)

map

map()是python内置的高阶函数,有两个参数,第一个是函数,第二个是可迭代对象。我们来看一下

reduce

上述map中返回的是类型是一个list(传啥回啥),如果我们想让返回原list中元素的和呢?

就要使用reduce(),也是传入两个参数

我们发现reduce返回的是一个整数,那上边的xy是什么呢?

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学c的长弓狗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值