从索引到结尾获取数组元素

Edg*_*uay 17 python indexing numpy vector

假设我们有以下数组:

import numpy as np
a = np.arange(1, 10)
a = a.reshape(len(a), 1)
array([[1],
       [2],
       [3],
       [4],
       [5],
       [6],
       [7],
       [8],
       [9]])
Run Code Online (Sandbox Code Playgroud)

现在,我想访问从索引4到结尾的元素:

a[3:-1]
array([[4],
       [5],
       [6],
       [7],
       [8]])
Run Code Online (Sandbox Code Playgroud)

当我这样做时,结果向量缺少最后一个元素,现在有五个元素而不是六个元素,为什么会发生,我怎样才能获得最后一个元素而不附加它?

预期产量:

array([[4],
       [5],
       [6],
       [7],
       [8],
       [9]])
Run Code Online (Sandbox Code Playgroud)

提前致谢

NPE*_*NPE 38

[:-1]删除最后一个元素.代替

a[3:-1]
Run Code Online (Sandbox Code Playgroud)

a[3:]
Run Code Online (Sandbox Code Playgroud)

你可以在这里阅读Python切片表示法:解释Python的切片表示法

NumPy切片是其中的延伸.NumPy教程有一些内容:索引,切片和迭代.

  • 我找到了答案 - 使用`None` - 就像`a [3:None]`. (10认同)
  • 是否有一个对象或其他"索引"可以在-1的位置使其表现得像'a [3:]`?我经常发现它会简化我写的代码.. (2认同)