我正在使用numpy数组。我试图计算一个包含从某个中心传播出来的元素产品的数组。我的代码看起来很像,psi
是numpy.array()
:
up=psi[position:position+width]
pre_down=psi[position-width+1:position+1]
down=pre_down[::-1]
ac=up*down
是否有更优雅,更pythonic的方式来制作阵列" down"?类似
down=psi[position:position-width:-1]
position-width
为0时,无效。
答案 0 :(得分:3)
当您需要切片到元素0时,可以使用None
作为切片的末尾。
end = position - width - 1 if position > width else None
down = psi[position:end:-1]
答案 1 :(得分:1)
您可以使用or
关键字将值0
替换为None
,为您提供基本元素。
down=psi[position:position-width or None:-1]