numpy pytorch切片和索引

1. :冒号

有两种使用单冒号和双冒号。

单冒号是双冒号的一个特例。

start:end:step 是完整写法,表示取start到end(不包含),间隔step。

所以会有变体,比如

:2  取0,1

:-1 取至倒数第二个

-3: 取倒数第三个至最后

::2 间隔一个取

2. ... 省略号(英文)

表示省略维度,缺省则由程序自动判断

3. ,逗号

维度分隔符

4. None 无

表示增加维度,unsquenze也有同样用法。

有np.newaxis=None

>>> a = np.arange(3)
>>> a
array([0, 1, 2])

>>> a[None,:]
array([[0, 1, 2]])

>>> a[None,None,:]
array([[[0, 1, 2]]])

>>> a[:,None]
array([[0],
       [1],
       [2]])

>>> a[:,None,None]
array([[[0]],

       [[1]],

       [[2]]])

综上:

a[0,...,::2] 表示对a第一维取前一维,中间维度不变且都要,最后一维间隔取。

你可能感兴趣的:(python,numpy)