Yield input elements with given stride and offset.
(elements, stride, offset)
| 17 | |
| 18 | |
| 19 | def strider(elements, stride, offset): |
| 20 | """ Yield input elements with given stride and offset. """ |
| 21 | next_element = offset |
| 22 | |
| 23 | # support negative offsets |
| 24 | while next_element < 0: |
| 25 | next_element += stride |
| 26 | |
| 27 | for i, elem in enumerate(elements): |
| 28 | if i == next_element: |
| 29 | next_element += stride |
| 30 | yield elem |
| 31 | |
| 32 | |
| 33 | def modulo_expand(expr, stride, offset): |