micropython-ulab/snippets/numpy/lib/block.py
2022-07-16 18:00:10 +02:00

17 lines
No EOL
372 B
Python

from ulab.numpy import zeros
def block(S):
w = sum([len(m[0]) for m in S[0]])
h = sum([len(row[0]) for row in S])
M = zeros((h, w))
i = 0
j = 0
for row in S:
di = len(row[0])
for matrix in row:
dj = len(matrix[0])
M[i:i + di, j:j + dj] = matrix
j += dj
i += di
j = 0
return M