python三个重要的内置函数(map, filter,reduce)-

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python三个重要的内置函数(map, filter,reduce)-相关的知识,希望对你有一定的参考价值。

参考技术A

map函数第一个参数是一个函数function,第二个参数是一个可迭代的对象iterable,他的功能是将可迭代对象iterable里面的每一项都应用到函数function中,然后返回一个迭代器。

可迭代器里面有多少个元素则结果就包含多少个元素

filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。

该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。


reduce() 函数会对参数序列中元素进行累积。

函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。

python--几个重要内置函数(zip,fliter,map,sorted)

# # zip     拉链方法
# l = [1,2,3]
# l2 = [‘a‘,‘b‘,‘c‘]
# l3 = (‘*‘,‘**‘,[1,2])
# d = ‘k1‘:1,‘k2‘:2,‘k3‘:3
# for i in zip(l,l2,l3,d):
#     print(i)
#
# # filter
# def is_odd(x):
#     return x % 2 == 1
#
# def is_str(s):
#     if type(s) != int:
#         return s and str(s).strip()
# # ret = filter(is_odd, [1, 4, 6, 7, 9, 12, 17])
# # ret = filter(is_str, [1,‘hello‘, 6, 7,‘world‘,12,17])
# ret = filter(is_str, [1,‘hello‘,‘‘,‘  ‘,None,[],6,7,‘world‘,12,17])
# print(ret)
# for i in ret:
#     print(i)
# [i for i in[1, 4, 6, 7, 9, 12, 17] if i % 2 == 1]

"""
用filter过滤出1~100中平方根是整数的数,
"""
# import math
# def is_sqr(x):
#     return math.sqrt(x) % 1 ==0
# ret1 = filter(is_sqr,range(1,101))
# for i in ret1:
#     print(i)

# map
# ret = map(abs,[1,-4,6,-8])
# print(ret)
# for i in ret:
#     print(i)

# sorted
# l = [1,-4,6,5,-10]
# print(sorted(l))
# print(sorted(l,reverse=True))
# print(sorted(l,key=abs,reverse=True))

l = [   ,[1,2],hello world]
new_1 = sorted(l,key=len)
print(new_1)

 

以上是关于python三个重要的内置函数(map, filter,reduce)-的主要内容,如果未能解决你的问题,请参考以下文章

python--几个重要内置函数(zip,fliter,map,sorted)

map 与filter和reduce内置函数

python内置函数filter(),map(),reduce()笔记

python之有用的3个内置函数(filter/map/reduce)

python 内建函数 filter,map和reduce

Python之路day13-内置函数_lambda_闭包