У меня есть следующая матрица
B = [[1,2], [3,4]]
и хотел бы сохранить матрицу в виде строк синтаксиса ij b_ij
где i
и j
- матричные индексы, а b_ij
- значение в этой индексированной позиции.
То есть, приведенная выше матрица будет выглядеть так:
0 0 1
0 1 2
1 0 3
1 1 4
Есть ли способ сделать это с помощью библиотеки в Python? Кроме того, является ли это общим форматом для хранения матрицы как необработанных байтов? Я знаю, что достаточно легко перебирать матрицу, чтобы сохранить ее таким образом, но это кажется довольно неэффективным.
Это не библиотека, но вы можете просто использовать понимание списка:
>>> B = [[1, 2], [3, 4]]
>>> matrix = [ [i, j, B[i][j]] for i in range(len(B)) for j in range(len(B[i])) ]
>>> print(matrix)
[[0, 0, 1], [0, 1, 2], [1, 0, 3], [1, 1, 4]]
Вы также можете расширить цикл for
чтобы сделать что-то подобное, или встраивать внутри друг друга, если ваша матрица B
идет глубже, чем эта.