1.问题描述
矩阵转置
给定一个n×m矩阵相乘,求它的转置。其中1≤n≤20,1≤m≤20,矩阵中的每个元素都在整数类型(4字节)的表示范围内。
输入格式
第一行两个整数n和m;
第二行起,每行m个整数,共n行,表示n×m的矩阵。数据之间都用一个空格分隔。
输出格式
共m行,每行n个整数,数据间用一个空格分隔,表示转置后的矩阵。
样例输入
2 4
34 76 -54 7
-4 5 23 9
样例输出
34 -4
76 5
-54 23
7 9
2.代码
list_old = []
list_new = []
list_in = [[] for i in range(20)]
m, n = map(int, input().split())
"""
构造矩阵列表
"""
for i in range(0, m):
list_old.append(list(map(int, input().split())))
for j in range(0, n):
list_new.append(list_in[j])
print(list_old)
print(list_new)
"""
转置
"""
for a in range(0, n):
for b in range(0, m):
list_new[a].append(list_old[b][a])
print(list_new)
"""
打印
"""
for c in range(0, n):
for l in range(0, m):
print(list_new[c][l], end=" ")
print("")
输出结果:
2 4
34 76 -54 7
-4 5 23 9
[[34, 76, -54, 7], [-4, 5, 23, 9]]
[[], [], [], []]
[[34, -4], [76, 5], [-54, 23], [7, 9]]
34 -4
76 5
-54 23
7 9