直接回答:高阶函数是"以函数为参数,或以函数为返回值"的函数。它把行为当作数据来传递组合,是函数式编程的基础工具。

示例(两类各一个):

# 参数是函数:sorted 的 key
sorted(["apple", "kiwi", "banana"], key=len)   # 按长度排序

# 返回值是函数:函数工厂
def make_multiplier(n):
    return lambda x: x * n

double = make_multiplier(2)
double(5)   # 10

展开解析:Python 内置的高阶函数很常见——mapfiltersorted(key=...)functools.reduce,以及装饰器(本质是接收函数、返回新函数的高阶函数)。高阶函数的价值在于抽象出重复模式:排序的"比较规则"、遍历的"处理逻辑"由调用方注入,框架代码只需写一遍,复用性和表达力都显著提升。追问:map/filter 在 Python 3 返回迭代器的设计意图、列表推导式为何常比 map/filter 更受欢迎。