python2和python3 map函数的区别

版权声明:本文为博主原创文章,未经博主允许可以随意转载。 https://blog.csdn.net/Abit_Go/article/details/77900405

map()是 Python内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。

def f(x):
    return x*x
print map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])

执行结果:[1, 4, 9, 10, 25, 36, 49, 64, 81]
但是在python3返回的是
这里写图片描述

现在我们只需要将print(map(f,[1,2,3,4]))写成print(list(map(f,[1,2,3,4])))就好了。

因为在python3接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 tuple 并返回。
所以我们直接强制转化就ok了
这里写图片描述

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试