
Python中包含许多常用的函数。
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
Python是一种高级的、解释型的编程语言,它提供了大量的实用内置函数,旨在协助开发者高效地实现各种各样的任务。本文将详细阐述Python中三个被广泛使用的高阶函数:map()函数、reduce()函数以及filter()函数。
一、map()函数
map()函数是一种强大的高阶函数,其核心功能在于接收一个函数f和列表作为输入,并通过将该函数f依次应用于列表中的每一个元素,从而生成一个新的列表并返回结果。值得注意的是,map()函数不会对原始列表进行任何修改,而是创建一个全新的列表来存储处理后的结果。例如,我们可以利用map()函数对列表中的每个元素进行平方运算:
```python
def f(x):
return x*x
print(map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9]))
```
这段代码的输出结果为:[1, 4, 9, 16, 25, 36, 49, 64, 81]。
除了简单的平方运算外,map()函数还可以用于规范化英文名字的格式。假设用户输入的英文名字格式不规范,例如没有遵循首字母大写、后续字母小写的规则,我们可以借助map()函数将其转换为标准的英文名字格式:
```python
def format_name(s):
return s[0].upper() + s[1:].lower()
print(map(format_name, [adam, LISA, barT]))
```
这段代码的输出结果为:[Adam, Lisa, Bart]。
二、reduce()函数
reduce()函数同样是Python内置的高阶函数。与map()和filter()不同的是,reduce()函数的行为更为独特。它接收一个名为f的函数和一个列表作为输入,并反复调用该函数f来对列表中的元素进行处理,最终返回一个单一的值作为最终结果。需要强调的是,reduce()传入的函数f必须接受两个参数。例如,我们可以使用reduce()函数来计算列表中所有元素的总和:
```python
def f(x, y):
return x + y
print(reduce(f, [1, 3, 5, 7, 9]))
```
这段代码的输出结果为:25. 此外,reduce() 函数还可以用于计算列表中所有元素的乘积:
```python
def prod(x, y):
return x * y
print(reduce(prod, [2, 4, 5, 7, 12]))
```
这段代码的输出结果为:2*4*5*7*12的结果.
三、filter() 函数
filter() 函数是 Python 内置的一个非常有用的高阶函数。它接收一个名为 f 的函数和一个列表作为输入。该函数的 f 的作用是对每个元素进行判断并返回 True 或 False;filter 函数根据判断结果自动过滤掉不符合条件的元素并返回由符合条件元素组成的全新列表. 例如: 使用 filter 函数可以从列表中删除偶数而保留奇数:
```python
def is_odd(x):
return x % 2 == 1
print(filter(is_odd,[1 ,4 ,6 ,7 ,9 ,12 ,17]))
```
这段代码的输出结果为: [1 ,7 ,9 ,17]. filter 函数还可以用来删除 None 值或者空字符串:
本文总结了 Python 中三个常用的高阶函数的特性: map () 函数、 reduce () 函数以及 filter () 函数. 这些工具能够显著提升开发者的编码效率和工作效率.
全部评论 (0)


