转置矩阵

题目:

转置矩阵。


测试数据:

[[1, 4, 3],
 [8, 2, 6],
 [7, 8, 3],
 [4, 9, 6],
 [7, 8, 1]]

正确结果:

[[1, 8, 7, 4, 7],
 [4, 2, 8, 9, 8],
 [3, 6, 3, 6, 1]]

代码1(普通青年版):

def checkio(data):
    # 创建一个空的二维列表,注意分配合适的长度。
    temp = [['' for j in range(len(data))] for i in range(len(data[0]))]
    
    # 遍历列表的每一个元素,将对应的值赋值给已经对调下标的新列表。
    for i in range(len(data)):
        for j in range(len(data[i])):
            temp[j][i] = data[i][j]
    
    # 返回新列表
    return temp

代码2(文艺青年版):

def checkio(data):
    return list(map(list, zip(*matr)))


你可能感兴趣的:(转置矩阵)