如何将数组转换为整数列表(是否使用Numpy)?
从数组中提取数据时,得到以下结果 e = ['100''88''45''59''73''89']
然后我使用.tolist()函数将数组转换为列表,以获取以下输出
e = ['100', '88', '45', '59', '73', '89']
现在,当我尝试使用list(map(int,e)删除列表''中列表中项目的引号时,我得到了'numpy.ndarray'对象不是可调用错误。 请帮助我解决此问题。
e = a[1:,1]
e = e.tolist()
e = list(map(int,e))
答案 0 :(得分:2)
简单的list-comrehension
在这里可以工作:
e = ['100', '88', '45', '59', '73', '89']
e = [int(i) for i in e]
print(e)
输出:
[100, 88, 45, 59, 73, 89]
答案 1 :(得分:2)
除了列表理解之外,map
在这里也可以工作:
e = ['100', '88', '45', '59', '73', '89']
e = list(map(int, e))
print(e) # [100, 88, 45, 59, 73, 89]
您的代码出现此错误的原因是您在某处覆盖了list
或map
(很可能是list
,这个错误很常见)。实际上,您正在执行以下操作:
list = 42
list('foo')
减少到
42('foo')
这将产生int not callable
错误。就您而言,您将list
或map
重新定义为一个numpy数组。