列表推导式相关,求矩阵转置哪里有问题
matrix = [,,
]
Tmatrix = for row in matrix for col in range(4)]
print(Tmatrix) 在你的代码中,列表推导式的结构不正确,或许这里有一些误解。要实现矩阵的转置,我们需要交换矩阵的行和列。假设矩阵是一个二维列表,首先我们要确保传入的是一个有效的矩阵。
以下是实现矩阵转置的正确方法:
matrix = [
,
,
]
# 获取矩阵的转置
Tmatrix = [ for row in matrix] for i in range(len(matrix))]
print(Tmatrix)
这样,`Tmatrix` 会是矩阵 `matrix` 的转置。即,对于原矩阵的每一列生成新的行。这种方式适用于任何非空矩阵。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 本帖最后由 jackz007 于 2024-11-17 11:13 编辑
matrix = [,
,
]
Lmatrix = [[-1 - row] for col in range(len(matrix))] for row in range(len(matrix))]
Rmatrix = [ for col in range(len(matrix))] for row in range(len(matrix))]
for x in matrix : print(*x)
print()
for x in Lmatrix : print(*x)
print()
for x in Rmatrix : print(*x)
运行实况:
D:\\Python>python x.py
1 2 3 4
5 6 7 8
9 10 11 12
4 8 12
3 7 11
2 6 10
1 5 9
9 5 1
10 6 2
11 7 3
12 8 4
D:\\Python> matrix = [,
,
]
Tmatrix = list(zip(*matrix))
print(*Tmatrix, sep='\n')
页:
[1]