pyhon高阶函数用法
时间: 2024-05-07 21:20:04 浏览: 99
Python 中高阶函数是指能够接收其他函数作为参数或者返回函数作为结果的函数。高阶函数在函数式编程中非常常见,也很实用。
下面列举几个 Python 中高阶函数的常用用法:
1. map():将一个函数作用于一个序列的每个元素,并返回一个新的序列。
```python
def square(x):
return x ** 2
list_a = [1, 2, 3, 4, 5]
list_b = map(square, list_a)
print(list_b) # [1, 4, 9, 16, 25]
```
2. filter():根据给定的函数过滤序列中的元素,并返回一个新的序列。
```python
def is_even(x):
return x % 2 == 0
list_a = [1, 2, 3, 4, 5]
list_b = filter(is_even, list_a)
print(list_b) # [2, 4]
```
3. reduce():对一个序列中的所有元素进行累积计算,并返回最终结果。
```python
from functools import reduce
def add(x, y):
return x + y
list_a = [1, 2, 3, 4, 5]
result = reduce(add, list_a)
print(result) # 15
```
4. sorted():根据给定的函数对序列进行排序。
```python
def get_key(x):
return x[1]
list_a = [("Alice", 23), ("Bob", 28), ("Charlie", 21), ("David", 25)]
list_b = sorted(list_a, key=get_key)
print(list_b) # [("Charlie", 21), ("Alice", 23), ("David", 25), ("Bob", 28)]
```
5. lambda 函数:匿名函数,用于简化代码和代码块的传递。
```python
list_a = [1, 2, 3, 4, 5]
list_b = map(lambda x: x ** 2, list_a)
print(list_b) # [1, 4, 9, 16, 25]
```
阅读全文