Python 减少循环的三个妙招!!

作为21世纪最流行的语言之一,Python当然有很多有趣的函数值得深入探索和研究。今天我就分享一下其中三个函数。
这三个函数可不简单,它们可以帮助我们避免编写循环,有时循环的运行成本是很高的。此外,这些函数还有助于提高运行速度。

————————map()—————————

map() 函数的作用是将另一函数作为参数,与某种数组放在一起,旨在将函数(作为参数而导入的函数)应用于数组中的每一个项。
eg:

data = [1,2,3,4,5]
def num_func(x):
    return x**2/2
print(list(map(num_func,data)))

[0.5, 2.0, 4.5, 8.0, 12.5]
注:map() 本身将会返回一个map对象,因此需要将其转为为一个列:

————————reduce()———————

reduce()则不同,必须从functools模块将其导入。该操作主要是将一个给定的函数应用于项目组,然后返回一个值。
eg:

from functools import reduce
def num_add(a,b):
    return a+b
data = [1,2,3,4,5]
print(reduce(num_add,data))

15

————————filter()————————

顾名思义这个函数的作用是只将满足特定条件的项保留在数组中。
与map()一样,预先声明函数,然后将其和迭代列表一起传递到 filter()。

def more_than_15(x):
    return x > 15
data = [1,10,100]
print(list(filter(more_than_15,data)))

[100]
注:同样 filter()返回的也是数组哦

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值