numpy.ndarray零维度,没有形状仍然存储数据

时间:2018-03-15 09:11:57

标签: python numpy types

我正在尝试计算整数的中位数并返回numpy中的整数。根据{{​​3}}的文档:

,我认为这应该是有用的
import numpy as np
m1 = np.median((1,2,3))
myout = np.zeros_like(m1, dtype=np.intp)
m2 = np.median((1,2,3), out=myout)

但是,在我的调试控制台中输入myoutm2时,我得到的唯一值是<ndarray>。如何获取存储在那里的值?有吗?我做错了什么?

更新 我从您的评论中注意到,print(m2)确实打印了2,这就是我想要的。但是,m2仍然很奇怪,因为m2.shape()m2.ndim0。这可能导致调试控制台不显示2的值。所以我现在的问题是,ndarray如何保持零维度并仍然存储数据?

print(m2)
print(m2.shape)
print(m2.ndim)

1 个答案:

答案 0 :(得分:1)

我无法复制你的错误,这对我来说非常有效。也许一些版本问题?尝试以你想要的方式使用m2和myout。这是我跑的:

>>> import numpy as np
>>> m1 = np.median((1,2,3))
>>> print (m1)
2.0
>>> myout = np.zeros_like(m1, dtype=np.intp)
>>> m2 = np.median((1,2,3), out=myout)
>>> print(myout)
2
>>> print(m2)
2