Python中重要的内建高阶函数

Python中重要的内建高阶函数

在Python中,filter、sorted、map 和 reduce 是一些内建的高阶函数,用于对可迭代对象进行过滤、排序、映射和累积操作。

filter 函数

  • 语法:filter(function, iterable)

  • 作用:用于过滤可迭代对象中的元素,返回一个由使得 function 返回 True 的元素所组成的迭代器。

  • 示例:

    py 复制代码
    # 过滤出偶数
    numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    result = filter(lambda x: x % 2 == 0, numbers)
    print(list(result))  # 输出 [2, 4, 6, 8, 10]
    py 复制代码
    >>> def f(x) :
    	return True if x % 2 == 0 else False
    
    >>> number = [i for i in range(1, 10)]
    >>> list(filter(f, number))
    [2, 4, 6, 8]

sorted 函数

  • 语法:sorted(iterable, key=key, reverse=reverse)

  • 作用:对可迭代对象进行排序,返回一个新的已排序列表。

  • 示例:

    py 复制代码
    # 对字符串列表按长度排序
    words = ['apple', 'banana', 'kiwi', 'orange']
    result = sorted(words, key=len)
    print(result)  # 输出 ['kiwi', 'apple', 'banana', 'orange']

map 函数

  • 语法:map(function, iterable, ...)

  • 作用:对可迭代对象的每个元素应用一个函数,返回一个由应用函数后的结果组成的迭代器。

  • 示例:

    py 复制代码
    # 对列表中的每个元素求平方
    numbers = [1, 2, 3, 4, 5]
    result = map(lambda x: x**2, numbers)
    print(list(result))  # 输出 [1, 4, 9, 16, 25]

reduce 函数

  • 需要导入:from functools import reduce

  • 语法:reduce(function, iterable[, initializer])

  • 作用:对可迭代对象中的元素进行累积操作,返回一个单一的累积结果。

  • 示例:

    py 复制代码
    from functools import reduce
    
    # 计算列表中所有元素的乘积
    numbers = [2, 3, 4, 5]
    result = reduce(lambda x, y: x * y, numbers)
    print(result)  # 输出 120 (2 * 3 * 4 * 5)
相关推荐
迦南的迦 亚索的索几秒前
PYTHON_DAY21_数据分析
开发语言·python·数据分析
阿Y加油吧2 分钟前
栈的经典应用:字符串解码 & 每日温度 深度解析
数据结构·python·算法
枫叶丹44 分钟前
【HarmonyOS 6.0】ArkWeb 手势获焦模式详解:告别点击获焦,迎接长按触发
开发语言·华为·harmonyos
ID_180079054735 分钟前
如何使用 Python 调用小红书笔记评论 API 时进行并发控制?
开发语言·笔记·python
lsx20240611 分钟前
PHP Error处理指南
开发语言
沐雪轻挽萤14 分钟前
4. C++17新特性-内联变量 (Inline Variables)
开发语言·c++
树下水月14 分钟前
使用python 一键生成,PGSQL的数据字典
python
高山流水&上善15 分钟前
基于Qwen3-0.6B的光纤基础测试问答系统设计与实现
python·django
Chase_______15 分钟前
【JAVA基础指南(四)】快速掌握类和对象 基础篇
android·java·开发语言
每天吃饭的羊16 分钟前
Node.js 创建可二次编辑的 HTML 文档并生成文件
开发语言·javascript·ecmascript