当前位置:首页python > 正文

Python 矩阵运算:矩阵相乘

作者:野牛程序员:2025-12-22 11:22:26python阅读 2002
Python 矩阵运算:矩阵相乘
# /*
# Python 矩阵运算:矩阵相乘
# --------------------------------------------------------
# 定义:
# 矩阵相乘要求左矩阵列数等于右矩阵行数,
# 结果矩阵的行数为左矩阵行数,列数为右矩阵列数。
#
# 示例演示:
# 1) 使用嵌套列表表示矩阵
# 2) 按照矩阵乘法公式计算
# 3) 可扩展到任意尺寸矩阵
# */

# --------------------------------------------------------
# 示例矩阵
A = [
    [1, 2, 3],
    [4, 5, 6]
]

B = [
    [7, 8],
    [9, 10],
    [11, 12]
]

# 初始化结果矩阵
rows = len(A)
cols = len(B[0])
C = [[0 for _ in range(cols)] for _ in range(rows)]

# 矩阵相乘
for i in range(rows):
    for j in range(cols):
        for k in range(len(B)):
            C[i][j] += A[i][k] * B[k][j]

print("矩阵 A:", A)
print("矩阵 B:", B)
print("矩阵相乘结果 C:", C)

# --------------------------------------------------------
# 使用 numpy 库简化矩阵运算
import numpy as np

A_np = np.array(A)
B_np = np.array(B)
C_np = np.dot(A_np, B_np)  # 或者 A_np @ B_np

print("使用 numpy 相乘结果:\n", C_np)

# --------------------------------------------------------
# 要点总结:
# 1) 矩阵相乘要求左矩阵列数 = 右矩阵行数;
# 2) 结果矩阵行数 = 左矩阵行数,列数 = 右矩阵列数;
# 3) 原生嵌套列表实现适合小矩阵;
# 4) numpy 提供 dot() 或 @ 运算符简化矩阵乘法;
# 5) 可扩展到矩阵幂、线性代数运算等。
# */
#
# 矩阵 A: [[1, 2, 3], [4, 5, 6]]
# 矩阵 B: [[7, 8], [9, 10], [11, 12]]
# 矩阵相乘结果 C: [[58, 64], [139, 154]]
# 使用 numpy 相乘结果:
#  [[ 58  64]
#  [139 154]]


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • Python 矩阵运算:矩阵相乘
  • 相关推荐

    最新推荐

    热门点击