diff options
Diffstat (limited to 'circuitpython/extmod/ulab/tests/1d/numpy/slicing.py')
| -rw-r--r-- | circuitpython/extmod/ulab/tests/1d/numpy/slicing.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/circuitpython/extmod/ulab/tests/1d/numpy/slicing.py b/circuitpython/extmod/ulab/tests/1d/numpy/slicing.py new file mode 100644 index 0000000..466c3b2 --- /dev/null +++ b/circuitpython/extmod/ulab/tests/1d/numpy/slicing.py @@ -0,0 +1,23 @@ +try: + from ulab import numpy as np +except: + import numpy as np + +for num in range(1,4): + for start in range(-num, num+1): + for end in range(-num, num+1): + for stride in (-3, -2, -1, 1, 2, 3): + l = list(range(num)) + a = np.array(l, dtype=np.int8) + sl = l[start:end:stride] + ll = len(sl) + try: + sa = list(a[start:end:stride]) + except IndexError as e: + sa = str(e) + print("%2d [% d:% d:% d] %-24r %-24r%s" % ( + num, start, end, stride, sl, sa, " ***" if sa != sl else "")) + + a[start:end:stride] = np.ones(len(sl)) * -1 + print("%2d [% d:% d:% d] %r" % ( + num, start, end, stride, list(a))) |
