首页 > 解决方案 > Python3通过列表构造函数构造地图对象时出错

问题描述

list_of_input = map(float,[1,2,3]) print(list(list_of_input)[0]) print(list(list_of_input)[0])

IndexError:列表索引超出范围

为什么会出现这个错误?

标签: pythonpython-3.xlistdictionary

解决方案


map 到 list 的转换只进行一次,这意味着 map 是一个生成器对象,一旦你将它转换为 list,它就会被耗尽:python 3: generator for map。所以错误来自第二个打印语句,而不是第一个。


推荐阅读