27

假设我们有以下数组:

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]])

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

a[3:-1]
array([[4],
       [5],
       [6],
       [7],
       [8]])

当我这样做时,结果向量缺少最后一个元素,现在有五个元素而不是六个,为什么会发生这种情况,如何在不附加的情况下获得最后一个元素?

预期输出:

array([[4],
       [5],
       [6],
       [7],
       [8],
       [9]])

提前致谢

4

1 回答 1

58

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

a[3:-1]

a[3:]

您可以在此处阅读 Python 切片符号:解释 Python 切片符号

NumPy 切片是它的扩展。NumPy 教程有一些内容:索引、切片和迭代

于 2012-12-05T20:46:28.617 回答