Python map函数

map是Python的内置函数

使用的方式如下:
list = map(func, iter)
其中, func是函数, iter是可迭代的序列。它的功能是:将一个序列中的每一个元素应用传入的函数, 并返回一个包含所有函数调用结果的一个列表.举一个例子, 我有一个列表l, 我们要求把列表中的所有元素都加10, 整我们会这实现
l = [1, 2, 3]
l1 = []
for i in l:
print(l)
l1.append(i + 10)
print(l1)结果如下:
[1, 2, 3]
[1, 2, 3]
[1, 2, 3]
[11, 12, 13]
如果我们使用的map函数的话,我可以先定义个一个Inc的函数用于加10,然后在调用map行数 。
def inc(x):
return x + 10
print(list(map(inc, l)))
结果如下:
[11, 12, 13]
这里我大致流程应该是这样:
map函数会将l列表中的没有都映射都inc函数, 又将每一个返回的结果放在一个列表中, 但是这个结果列表在python3中需要调用list函数进行强制显示, 如果是python2则不用如果我们使用lambda函数,我们是可以减少一定的代码量的, 比如:print(list(map((lambda x: x + 10), l)))这样的我们完全可以一行搞定。其实我们还可以使用这样的列表解析,来完成这个需求:
print([i + 10 for i in l])
结果如下:
[11, 12, 13]
显然效果是一样的, 但是map作为内置函数, 在性能更快一些map函数还能使用多个序列作为参数, map会找到相应序列中的对应位置的元素作为参数传入函数中
#比如我们要计算两个序列中的对应位置的加和, 等到一个加和后的结果:
l2 = [2, 3]
l3 = [4, 5]
print(list(map((lambda x, y: x + y), l2, l3)))结果如下:
[6, 8]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值