Rolling or sliding window iterator?

后端 未结 23 1399
南方客
南方客 2020-11-21 05:23

I need a rolling window (aka sliding window) iterable over a sequence/iterator/generator. Default Python iteration can be considered a special case, where the window length

23条回答
  •  甜味超标
    2020-11-21 06:10

    def GetShiftingWindows(thelist, size):
        return [ thelist[x:x+size] for x in range( len(thelist) - size + 1 ) ]
    
    >> a = [1, 2, 3, 4, 5]
    >> GetShiftingWindows(a, 3)
    [ [1, 2, 3], [2, 3, 4], [3, 4, 5] ]
    

提交回复
热议问题