Python高阶函数是指可以接受函数作为参数或者返回函数作为结果的函数。以下是Python高阶函数的一些知识点:
1. map()函数:map()函数可以将一个函数作用于一个序列的每个元素上,并返回一个新的序列。例如,将一个列表中的每个元素都平方:
```python
def square(x):
return x ** 2
list1 = [1, 2, 3, 4, 5]
result = map(square, list1)
print(list(result)) # 输出:[1, 4, 9, 16, 25]
```
2. filter()函数:filter()函数可以过滤一个序列中的元素,返回一个新的序列。例如,过滤出一个列表中的所有偶数:
```python
def is_even(x):
return x % 2 == 0
list1 = [1, 2, 3, 4, 5]
result = filter(is_even, list1)
print(list(result)) # 输出:[2, 4]
```
3. reduce()函数:reduce()函数可以对一个序列中的元素进行累积操作,返回一个结果。例如,计算一个列表中所有元素的和:
```python
from functools import reduce
def add(x, y):
return x + y
list1 = [1, 2, 3, 4, 5]
result = reduce(add, list1)
print(result) # 输出:15
```
4. lambda表达式:lambda表达式是一种匿名函数,可以用于定义简单的函数。例如,将一个列表中的每个元素都平方:
```python
list1 = [1, 2, 3, 4, 5]
result = map(lambda x: x ** 2, list1)
print(list(result)) # 输出:[1, 4, 9, 16, 25]
```