为了账号安全,请及时绑定邮箱和手机立即绑定

【2023年】第70天 python中的迭代器

标签:
Python

1. filter函数

  • 对循环根据过滤条件进行过滤
  • 用法:filter(func, list)
  • 参数介绍:func,对list每个item进行条件过滤的定义
  • list需要过滤的列表
res = filter(lambda x: x > 1, [0, 1, 2])
返回值:<filter object at 0x000001FC8512B0A0>

2. map函数

  • 对列表中的每个成员一次执行函数,将执行结果放到新的list中,返回map对象。
  • 用法:map(func, list)
  • 参数介绍:func,对list每个item进行条件满足的判断
  • list,需要过滤的列表
res = map(lambda x:x > 1, [0, 1, 2])
print(res)

3. reduce功能

  • 对循环前后两个数据进行累加
  • 用法:reduce(func, list)
  • 参数介绍:func,对数据累加的函数
  • list,需要过滤的列表
from functools import reduce
res = reduce(lambda x, y: x+y, [0, 1, 2])
print(res)

4. 案例

from functools import reduce

frunts = ['apple', 'banana', 'orange']

result = filter(lambda x: 'e' in x, frunts)
print(list(result))
print(frunts)

def filter_func(item):
    if 'e' in item:
        return True

print('-------------')
filter_result = filter(filter_func, frunts)
print(list(filter_result))

map_result = map(filter_func, frunts)
print(list(map_result))

reduce_result = reduce(lambda x, y: x*y, [1, 1, 2])
print(reduce_result)

reduce_result_str = reduce(lambda x, y: x+y, frunts)
print(reduce_result_str)

结果:
图片描述

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消