我遇到了numpy
并试图了解构建multidimensional arrays
的正确语法。例如:
numpy.asarray([[1.,2], [3,4], [5, 6]])
打印:
[[ 1. 2.]
[ 3. 4.]
[ 5. 6.]]
while:
numpy.asarray([[1 ,2], [3, 4], [5, 6]])
打印:
[[1 2]
[3 4]
[5 6]]
.
是一个奇怪的语法元素。
它到底做了什么?
答案 0 :(得分:1)
np.array
从元素的性质中[]
和dtype
的嵌套推断出数组形状。如果至少有一个元素是Python float,则整个数组都是float:
In [178]: x=np.array([1, 2, 3.0]) # 1d float
In [179]: x.shape
Out[179]: (3,)
In [180]: x.dtype
Out[180]: dtype('float64')
如果所有元素都是整数 - 该数组也是int
In [182]: x=np.array([[1, 2],[3, 4]]) # 2d int
In [183]: x.shape
Out[183]: (2, 2)
In [184]: x.dtype
Out[184]: dtype('int32')
您也可以明确设置dtype
,例如
In [185]: x=np.array([[1, 2],[3, 4]], dtype=np.float32)
In [186]: x
Out[186]:
array([[ 1., 2.],
[ 3., 4.]], dtype=float32)
In [187]: x.dtype
Out[187]: dtype('float32')