ITPub博客

首页 > IT职业 > IT职场 > 运行map()后,报:

运行map()后,报:

IT职场 作者:lanyu 时间:2021-09-09 09:30:56 0 删除 编辑

1 如下python 3例子:

l = range(1,21)def op(x):r = 1for i in range(1,x + 1):r *= ireturn rlist1 = (map(op,l))print (list1)
  • 1

执行后发现报了如下错:
map object at 0x026427B0

2 出错原因分析:

这种情况是因为在python3里面,map()的返回值已经不再是list,而是iterators, 所以想要使用,只用将iterator 转换成list 即可, 比如 list(map()) 。

3 修改方法如下:

将该行 list1 = (map(op,l)) 修改为  list1 = list((map(op,l)) )


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2035/viewspace-2804215/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-07-29

  • 博文量
    96
  • 访问量
    7363