我有一维numpy阵列a = [1,2,3,4,5,6]
和一个函数,获取两个输入starting_index
和ending_index
,并返回a[staring_index:ending_index]
。圆形numpy阵列索引
很明显,我在ending_index
小于starting_index
时遇到了麻烦。在这种情况下,该函数应该从starting_index开始并以循环方式遍历向量a
,即返回starting_index
之后的所有元素加上从索引0到ending_index
的所有元素。
例如,如果starting_index=4
和ending_index=1
则输出应该是output = [5,6,1]
。我可以用if
条件实现它,但我想知道是否有任何Pythonic和简洁的方法来做到这一点?
这似乎与:https://scimusing.wordpress.com/2013/10/25/ring-buffers-in-pythonnumpy/ – endolith 2015-07-04 17:45:50