我想从数组中获取除前n个和后n个元素之外的所有元素,我可以在不使用if语句的情况下保持n=0的一致行为吗?(蟒蛇2.7)。
这是我想要的,但如果nCut=0,它就会崩溃:

nCut = 3
newArray = oldArray[nCut:-nCut]

这更接近,但不包括最后一个元素(实际上也是一个稍微隐藏的if语句)
newArray = oldArray[nCut:-nCut-1*(nCut<1)]

我必须对从文件中加载的一组数组执行此操作,因此对于n=0的情况,不使用一个大的丑陋的double upif将是很好的。

最佳答案

添加len(oldArray)您自己,而不是指望切片实现来为您执行:

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

08-07 16:43