Чтобы повернуть матрицу на 90 градусов по часовой стрелке в Python, можно использовать несколько методов. Вот несколько подходов:
Метод 1: использование NumPy
import numpy as np
def rotate_matrix(matrix):
rotated_matrix = np.rot90(matrix, k=-1)
return rotated_matrix.tolist()
Метод 2: использование понимания списка
def rotate_matrix(matrix):
rotated_matrix = [list(reversed(col)) for col in zip(*matrix)]
return rotated_matrix
Метод 3: использование транспонирования и реверса
def rotate_matrix(matrix):
rows = len(matrix)
cols = len(matrix[0])
rotated_matrix = [[matrix[j][i] for j in range(rows-1, -1, -1)] for i in range(cols)]
return rotated_matrix
Метод 4. Использование вложенного цикла
def rotate_matrix(matrix):
rows = len(matrix)
cols = len(matrix[0])
rotated_matrix = [[0] * rows for _ in range(cols)]
for i in range(rows):
for j in range(cols):
rotated_matrix[j][rows-i-1] = matrix[i][j]
return rotated_matrix