选择NumPy数组范围,包括最后一个元素

时间:2019-01-28 20:05:27

标签: python numpy

如果我想选择一个NumPy数组的所有元素,直到索引N,我可以编写:

x = my_array[:N]

例如,如果要选择所有元素,直到索引5,我可以编写:

N = 5
x = my_array[:N]

或者,如果我想选择所有元素,包括倒数第二个元素,我可以编写:

N = -1
x = my_array[:N]

但是,如果我想选择所有元素,包括最后一个元素,该怎么办?如何使用上面的符号执行此操作?

我尝试过:

N = -0
x = my_array[:N]

但这将返回一个空白数组。

p.s。是的,我可以写出x = my_array[:],但是我需要它采用my_array[:N]的格式,其中N是动态定义的。

1 个答案:

答案 0 :(得分:1)

使用您的方法:

N = len(my_array)
x = my_array[:N]

然后,如果您只想切片到该索引,则可以指定N的任意值。如果已知,您也可以直接指定数组的长度。

为了说明这一点...

my_array = [1, 2, 3, 4, 5]
N = len(my_array)
x = my_array[:N]
my_array == x

...返回True。