2020-02-24
2020-02-24 本文已影响0人
砯崖转石万壑雷
高阶函数
lambda函数
lambda是一种表达式,创建内嵌的简单匿名函数
filter函数
返回一个列表,其中包含对其执行函数时结果为真的所有元素
filter函数主要作为筛选器使用 通过bool类型判断得到数据
image.pngmap函数
image.png创建一个列表,其中包含对指定序列包含的项执行指定函数返回的值
#通过map函数进行对一个列表内的数据进行5次方运算
def use_map(l):
return map(pow(l,5),l)
l=[2,4,6,8,10,12]
print(list(use_map(l)))
#### reduce函数
>使用指定的函数将序列的前两个元素合二为一,再将结果和第三个元素合二为一,以此类推,知道处理完整个序列并得到一个结果
##### **reduce函数在使用前需要调用from functools import reduce**
![a74d586a3653f553242f18d451cb838e.png](en-resource://database/469:0)
```python
#通过reduce函数进行阶乘
from functools import reduce
def re1(l):
return reduce(lambda m,n:m*n,l)
b = list(range(1,21))
print(re1(b))
image.png通过组合reduce 和map处理将字符串转化成列表然后再进行 计算的操作时
通常会设置一个dict和字符串对应的数值
sorted 函数
通过<u>key</u>中确定的需要作为排序依据的关键字,对前面输入的列表中的数据进行排序
<u>key的内容是sorted函数的核心,通过函数,方法等形式指出 :到底什么是这个列表排序的依据</u>
image.png可以是abs表示用列表中元素的绝对值的大小进行排序
image.png可以是用lower方法操作过的字符串——表明用字符串的小写形式大小进行排序
image.png#按照tuple中的单词排序
def by_name(x):
t=x[0]
return t
re1=sorted(L,key=lambda x:by_name(x))
print(re1)
by_name函数中t=x[0]指明是利用x元组中的第一个元素——一堆字母进行排序