python3和python2中map函数的使用变化

Python3的map函数返回的是一个迭代器对象,需要通过list()转换才能显示结果。而在Python2中则直接返回结果。map函数用于将一个函数应用到可迭代对象的每个元素上,返回应用后的结果。当在Python3中使用map时,若要获取与Python2相同的效果,需要对返回的迭代器进行list转换。
摘要由CSDN通过智能技术生成

Python3中直接使用map函数返回值是内存地址 需要在对返回值进行list()处理后才能正常显示结果

map函数是Python里面比较重要的函数,设计灵感来自于函数式编程。Python官方文档中是这样解释map函数的:

map(functioniterable...)

Return an iterator that applies function to every item of iterable, yielding the results. If additional iterable arguments are passed, function must take that many arguments and is applied to the items from all iterables in parallel. With multiple iterables, the iterator stops when the shortest iterable is exhausted.

即map函数接收的第一个参数为一个函数,可以为系统函数例如float、或者def定义的函数、或者lambda定义的函数均可。

举一个简单的例子,下面这个例子在Python2.7下是可以正常显示的:

1

2

3

4

5

6

7

8

9

10

ls = [1,2,3

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值