圆月山庄资源网 Design By www.vgjia.com
前言
高阶函数指的是能接收函数作为参数的函数或类;python中有一些内置的高阶函数,在某些场合使用可以提高代码的效率.
lambda
当在使用一些函数的时候,我们不需要显式定义函数名称,直接传入lambda匿名函数即可。lambda匿名函数通常和其他函数搭配使用。
比如可以直接使用如下的lambda表达式计算当x=3时,y = x * 3 + 5的函数值。
In [1]: (lambda x: x * 3 + 5)(3) Out[1]: 14
map
map函数将一个函数和序列/迭代器(可以传入多个)作为参数,应用函数到序列中的每个元素,返回一个迭代器。
In [4]: a = list(range(5)) In [5]: b = list(range(2, 7)) # 结合lambda匿名函数,对a列表中的每个元素,计算x * 3 + 5的函数值 In [6]: list(map(lambda x: x * 3 + 5, a)) Out[6]: [5, 8, 11, 14, 17] In [9]: def add(x, y): ...: return x+y # 传入多个序列,a、b两个序列中的对应元素依次传入函数add中进行计算 # Note: a、b两个序列的长度可以不相等 In [10]: list(map(add, a, b)) Out[10]: [2, 4, 6, 8, 10]
filter
filter函数(filter(func, seq))借助一个函数来测试序列/迭代器中每个元素的真假,返回一个过滤后的迭代器。
In [18]: a = list(range(5)) In [19]: def isodd(number): ...: if number % 2 == 0: ...: return False ...: return True ...: In [20]: filter(isodd, a) Out[20]: <filter at 0x1a6dc460748> # 过滤掉所有偶数 In [21]: list(filter(isodd, a)) Out[21]: [1, 3]
reduce
reduce函数传入一个函数和序列/迭代器,它将滚动计算序列中元素,返回单个结果。例如要计算一个列表所有元素的和。
In [23]: from functools import reduce In [24]: a = list(range(5)) In [25]: sum = reduce((lambda x, y: x + y), a) In [26]: sum Out[26]: 10
sorted
sorted(iter, key, reverse=False), 高级排序函数,可以根据key实现自定义排序。reverse=False表示默认排序结果升序。
# 比如按照a中每个字符串最后的数字大小,降序排序 In [30]: a Out[30]: ['fasad_2', 'fadfc_4', '7hdc_0', 'ncsl_1', 'fai_3'] In [32]: sorted(a, key=lambda x: int(x[x.rindex('_') + 1:]), reverse=True) Out[32]: ['fadfc_4', 'fai_3', 'fasad_2', 'ncsl_1', '7hdc_0']
总结
以上所述是小编给大家介绍的Python中常用的高阶函数实例详解,希望对大家有所帮助,也非常感谢大家对网站的支持!
圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月02日
2024年11月02日
- 英文DJ 《致命的温柔》24K德国HD金碟DTS 2CD[WAV+分轨][1.7G]
- 张学友1997《不老的传说》宝丽金首版 [WAV+CUE][971M]
- 张韶涵2024 《不负韶华》开盘母带[低速原抓WAV+CUE][1.1G]
- lol全球总决赛lcs三号种子是谁 S14全球总决赛lcs三号种子队伍介绍
- lol全球总决赛lck三号种子是谁 S14全球总决赛lck三号种子队伍
- 群星.2005-三里屯音乐之男孩女孩的情人节【太合麦田】【WAV+CUE】
- 崔健.2005-给你一点颜色【东西音乐】【WAV+CUE】
- 南台湾小姑娘.1998-心爱,等一下【大旗】【WAV+CUE】
- 【新世纪】群星-美丽人生(CestLaVie)(6CD)[WAV+CUE]
- ProteanQuartet-Tempusomniavincit(2024)[24-WAV]
- SirEdwardElgarconductsElgar[FLAC+CUE]
- 田震《20世纪中华歌坛名人百集珍藏版》[WAV+CUE][1G]
- BEYOND《大地》24K金蝶限量编号[低速原抓WAV+CUE][986M]
- 陈奕迅《准备中 SACD》[日本限量版] [WAV+CUE][1.2G]
- TWINS.2004-SUCHABETTERDAY精美礼盒特别版2CD【英皇娱乐】【WAV+CUE】