为了账号安全,请及时绑定邮箱和手机立即绑定

运行map()后,报:<map object at 0x02629E50>解决方法与原因分析

标签:
Python

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)) )


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消