函数式编程是一种编程范式,它将计算过程定义为一系列的函数调用。Python 作为一种高级编程语言,也支持函数式编程。
基本概念
高阶函数
高阶函数是接受函数作为参数或将函数作为返回值的函数。Python 中,很多内置函数都是高阶函数,例如 map
, filter
, reduce
等。
函数式编程原则
- 无副作用:函数应该只返回结果,不应该改变外部状态。
- 不可变性:数据一旦创建,就不能修改。
- 纯函数:对于相同的输入,总是返回相同的输出。
实践指南
使用 lambda 表达式
Lambda 表达式是 Python 中实现匿名函数的一种方式。以下是一个使用 lambda 表达式的例子:
numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x**2, numbers))
print(squared) # 输出: [1, 4, 9, 16, 25]
使用 filter 和 map
filter
和 map
函数可以对列表进行操作,返回一个新的列表。
numbers = [1, 2, 3, 4, 5]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers) # 输出: [2, 4]
使用 functools.reduce
reduce
函数可以将一个序列中的元素通过一个函数进行累积。
from functools import reduce
numbers = [1, 2, 3, 4, 5]
sum_numbers = reduce(lambda x, y: x + y, numbers)
print(sum_numbers) # 输出: 15
扩展阅读
更多关于 Python 函数式编程的内容,可以参考本站的其他教程。
函数式编程