💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# Python 程序:转置矩阵 > 原文: [https://www.programiz.com/python-programming/examples/transpose-matrix](https://www.programiz.com/python-programming/examples/transpose-matrix) #### 在此示例中,您将学习转置矩阵(通过使用嵌套列表创建矩阵)。 要理解此示例,您应该了解以下 [Python 编程](/python-programming "Python tutorial")主题: * [Python `for`循环](/python-programming/for-loop) * [Python 列表](/python-programming/list) * * * 在 Python 中,我们可以将矩阵实现为嵌套列表(列表内的列表)。 我们可以将每个元素视为矩阵的一行。 例如,`X = [[1, 2], [4, 5], [3, 6]]`将代表 3x2 矩阵。 第一行可以选择为`X[0]`。 并且,第一行第一列中的元素可以被选择为`X[0][0]`。 矩阵的转置是行和列的互换。 它表示为`X'`。`X`中第`i`行和第`j`列的元素将放置在`X'`的第`j`行和第`i`列。 因此,如果`X`是 3x2 矩阵,则`X'`将是 2x3 矩阵。 以下是在 Python 中完成此操作的几种方法。 * * * ## 使用嵌套循环的矩阵转置 ```py # Program to transpose a matrix using a nested loop X = [[12,7], [4 ,5], [3 ,8]] result = [[0,0,0], [0,0,0]] # iterate through rows for i in range(len(X)): # iterate through columns for j in range(len(X[0])): result[j][i] = X[i][j] for r in result: print(r) ``` **输出** ```py [12, 4, 3] [7, 5, 8] ``` 在此程序中,我们使用了嵌套的`for`循环来遍历每一行和每一列。 在每个点上,我们将`X[i][j]`元素放入`result[j][i]`中。 * * * ## 使用嵌套列表推导式的矩阵转置 ```py ''' Program to transpose a matrix using list comprehension''' X = [[12,7], [4 ,5], [3 ,8]] result = [[X[j][i] for j in range(len(X))] for i in range(len(X[0]))] for r in result: print(r) ``` 该程序的输出与上述相同。 我们使用嵌套列表推导式来遍历矩阵中的每个元素。