Python 矩阵运算:矩阵转置(Transpose)
作者:野牛程序员:2025-12-22 11:23:58python阅读 1994
Python 矩阵运算:矩阵转置(Transpose)
# /*
# Python 矩阵运算:矩阵转置(Transpose)
# --------------------------------------------------------
# 定义:
# 矩阵转置是将矩阵的行与列交换,
# 即原矩阵的第 i 行第 j 列 → 转置矩阵的第 j 行第 i 列。
#
# 示例演示:
# 1) 使用嵌套列表实现转置
# 2) 使用列表推导式实现更简洁写法
# 3) 使用 numpy 的 transpose() 或 .T 属性快速转置
# */
# --------------------------------------------------------
# 示例矩阵
A = [
[1, 2, 3],
[4, 5, 6]
]
print("原矩阵 A:", A)
# --------------------------------------------------------
# 方法一:使用双层循环实现转置
rows = len(A)
cols = len(A[0])
T = [[0 for _ in range(rows)] for _ in range(cols)]
for i in range(rows):
for j in range(cols):
T[j][i] = A[i][j]
print("转置矩阵 T:", T)
# --------------------------------------------------------
# 方法二:列表推导式(更简洁)
T2 = [[A[i][j] for i in range(rows)] for j in range(cols)]
print("转置矩阵 T2:", T2)
# --------------------------------------------------------
# 方法三:zip 解包技巧(Pythonic 写法)
T3 = list(map(list, zip(*A)))
print("转置矩阵 T3:", T3)
# --------------------------------------------------------
# 使用 numpy 进行矩阵转置
import numpy as np
A_np = np.array(A)
T_np = A_np.T # 或 np.transpose(A_np)
print("使用 numpy 转置:\n", T_np)
# --------------------------------------------------------
# 要点总结:
# 1) 矩阵转置 = 行列互换;
# 2) 双层循环适合推导原理;
# 3) zip(*矩阵) 是最常用、最简洁的纯 Python 写法;
# 4) numpy 的 .T 属性性能最佳;
# 5) 对向量、矩阵计算与线性代数十分常用。
# */
# 原矩阵 A: [[1, 2, 3], [4, 5, 6]]
# 转置矩阵 T: [[1, 4], [2, 5], [3, 6]]
# 转置矩阵 T2: [[1, 4], [2, 5], [3, 6]]
# 转置矩阵 T3: [[1, 4], [2, 5], [3, 6]]
# 使用 numpy 转置:
# [[1 4]
# [2 5]
# [3 6]]野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

