2020-02-24

2020-02-24  本文已影响0人  砯崖转石万壑雷

高阶函数

lambda函数

lambda是一种表达式,创建内嵌的简单匿名函数

filter函数

返回一个列表,其中包含对其执行函数时结果为真的所有元素

filter函数主要作为筛选器使用 通过bool类型判断得到数据
image.png

map函数

创建一个列表,其中包含对指定序列包含的项执行指定函数返回的值

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))

通过组合reduce 和map处理将字符串转化成列表然后再进行 计算的操作时

image.png

通常会设置一个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元组中的第一个元素——一堆字母进行排序

上一篇下一篇

猜你喜欢

热点阅读