只有length1数组可以使用int函数转换为Python标量

2024-10-02 10:31:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前在python中得到了一个数组,它是字典的一个元素,在python控制台中,如下所示:

TUMEC['spans'][0]
array([0. , 0.25, 0.5, 0.75, 1.])

我想把整个数组传递给一个函数,但这必须通过一些简单的数学运算,比如:

^{pr2}$

但我收到了一条错误信息: 只有length-1数组可以转换为Python标量。在

所以,我试着import numpy并键入:

^{pr2}$

但我还是有同样的问题。在

有人知道我怎么绕过这个问题吗。在


Tags: 函数importnumpy元素键入字典数学数组
2条回答

您可以尝试转换为列表,然后理解:

[int(a*100) for a in list(TUMEC['spans'][0])]

我认为这里最好的方法是使用map,这意味着它更快:

print map(lambda x: int(x*100), TUMEC['spans'][0])

但是如果TUMEC['spans'][0]已经是一个numpy.array,那么下面的方法应该是可行的,并且应该是首选的方法,因为它更易读、更简单、更快(有人能确认fast部分吗?)。在

^{pr2}$

当然,在这两种情况下,结果都是一个列表,但是您可以使用np.array轻松修复它。在

相关问题 更多 >

    热门问题