Python:具有显式索引的数组的反向numpy视图

Python:具有显式索引的数组的反向numpy视图,python,numpy,Python,Numpy,如果我有一个256个元素的numpy数组,那么 a[:] 与 a[0:256] 对吗 但这相当于什么呢 a[::-1] ? 我怀疑是 a[255:-1:-1] 但这给了我一个空数组 示例代码: import numpy as np x = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) print(x[:]) #1 print(x[0:10]) #2 print(x[::-1]) #3 print(x[9:0:-1])

如果我有一个256个元素的numpy数组,那么

a[:]

a[0:256]
对吗

但这相当于什么呢

a[::-1]
?

我怀疑是

a[255:-1:-1]
但这给了我一个空数组

示例代码:

import numpy as np
x = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
print(x[:])        #1
print(x[0:10])     #2
print(x[::-1])     #3
print(x[9:0:-1])   #4
print(x[9:-1:-1])  #5
将打印

[0 1 2 3 4 5 6 7 8 9]  #1
[0 1 2 3 4 5 6 7 8 9]  #2
[9 8 7 6 5 4 3 2 1 0]  #3
[9 8 7 6 5 4 3 2 1]    #4
[]                     #5
这:

指从第9个元素到第0个元素的步骤,步骤为-1

要包含第0个元素,可以尝试(删除“0”):


希望这有帮助。

注意:这不是numpy独有的。
[:-1]
转换为
切片(无,无,-1)
。没有显式索引来复制第二个
None
。我正在按变量提取(反向)切片。类似于
subview=array[top-1:bottom-1:-1]
。这是否意味着我必须对代码进行特殊处理,例如if(bottom==0):subview=array[top-1:None:-1]else:subview=array[top-1:bottom-1:-1]?如果一定要这么难看的话,我会很惊讶……几乎<代码>arr[顶部:(底部无
x[9:0:-1] 
x[9::-1]