Транспонирование матрицы в питон

голоса
0

Я только начинаю мое приключение с питоном, и я не могу обернуть мою голову вокруг задачи, у меня был моим учителем.

Разработка сценария Python, что транспонировать данную матрицу MXN. Все элементы матрицы должны быть случайным образом с помощью randint инструкции от случайного модуля.

Могу ли я рассчитывать на вашу помощь?

Благодарность!

Задан 13/01/2020 в 23:59
источник пользователем
На других языках...                            


1 ответов

голоса
0

Это будет немного сложнее , без использования numpyфункций. Я хотел бы предложить вам , чтобы проверить это, это сэкономит вам много времени.

На данный момент, вы можете сделать что-то вроде этого:

import random
random.seed(1)

M = 5
N = 3

# create a N X M matrix
l = [[random.randint(1, 10) for _ in range(M)] for j in range(N)]

print(l)

[[3, 10, 2, 5, 2], [8, 8, 8, 7, 4], [2, 8, 1, 7, 7]]

# transpose (M X N matrix)
c = 0
mai = []
for i in range(M):
    x = []
    for j in range(N):
        x.append(l[j][c])
    c += 1
    mai.append(x)

print(mai)

[[3, 8, 2], [10, 8, 8], [2, 8, 1], [5, 7, 7], [2, 4, 7]]

Для транспонирования, вы также можете сделать [*zip(*l)]как предложено @Heap в комментариях.

Ответил 14/01/2020 в 00:14
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more