NumPy Array的Python子设置输出有点令人困惑

时间:2019-01-30 07:37:37

标签: python python-3.x numpy

二维二维numpy数组

import numpy as np
z = np.array([[1,   2,  3,  4,  5], 
             [11, 12, 13, 14, 15]])

选择第0行到第0行结束(输出为1D)

In [1]: z[0:,0]
Out[1]: array([ 1, 11])

选择第0行结束并选择第0列(输出为2D)

In [2]: z[0:,:1]
Out[2]: 
array([[ 1],
       [11]])

子设置标准相似;但是,为什么输出格式不同(一维数组与二维数组)?

1 个答案:

答案 0 :(得分:1)

我想区别在于选择的方式。当选择范围时,将添加该轴上的尺寸,但是,当将轴设置为常数时,将选择子尺寸数组。 这与其他数组相同,例如,请参见python列表

>>> arr = ['a', 'b', 'c']
>>> arr[0]
'a'
>>> arr[:1]
['a']
>>> 

Check Other indexing options Numpy doc