获取除numpy数组的前n个元素和最后n个元素之外的所有元素

时间:2018-02-01 00:16:43

标签: python arrays python-2.7 numpy

我想从数组中获取除第一个和最后n个元素以外的所有元素,我是否可以在保持n = 0的一致行为的同时不使用if语句? (Python 2.7)。 这就是我想要的,但如果nCut = 0:

就会崩溃
nCut = 3
newArray = oldArray[nCut:-nCut]

这是更接近的,但不包括最后一个元素(并且实际上只是一个稍微隐藏的if语句)

newArray = oldArray[nCut:-nCut-1*(nCut<1)]

我必须对我从文件中加载的一堆数组执行此操作,因此对于n = 0的情况,没有一个大的丑陋加倍if会很好。

1 个答案:

答案 0 :(得分:7)

自己添加len(oldArray),而不是依靠切片实现来为您完成:

newArray = oldArray[nCut:len(oldArray)-nCut]