切记:a无论是列表还是numpy中n维数组a[::-1]均表示将a 的第一个方括号内的元素进行逆序。
列表如何逆向地访问值:
使用切片就可以了:
list
[::
-
1
][:
3
]
list
[
-
3
:][::
-
1
]
list[::-1]是将列表反过来,一种是先反过来,然后取前三位;一种是先取后三位,再反过来。
同理在python中n维数组的逆序也是这样:
执行a[::-1],上下两行交换了。同样的看成一维数组的话,一行就是一个元素,这个运算其实就是对一个一维数组内的元素前后对调。多维数组可以理解成对对第一个方括号内的每一个元素前后对调。
下面有人证实了:

分别进行图中所示的4种运算。
执行a[:-1],移除了后面的一行。对于一维数组,后面的一行其实就是最后一个元素,所以这个运算就是移除最后一个元素。
执行a[::-1],上下两行交换了。同样的看成一维数组的话,一行就是一个元素,这个运算其实就是对一个一维数组内的元素前后对调。多维数组可以理解成对对第一个方括号内的每一个元素前后对调。
执行a[:,::-1],每一行中的元素前后交换了。简单理解就是对第二层反括号内的元素前后对调。
执行a[:,:,::-1],这样就好理解了,肯定是对第三层方括号内的元素对调。这也就解释了,对于一个24位深度的图像执行这个操作的话,是对每个像素的RGB进行对调。
对于图像而言,a[::-1],a[:,::-1],a[:,:,::-1]上述的三种方法分别是X轴的镜像,Y轴的镜像,BGR转换为RGB的操作。