You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现二维列表矩阵减法及结果元素求和的最优方法

Python实现矩阵减法并求和的最优方案

分两种场景选择最优实现方式:


1. 无第三方依赖场景(纯Python实现)

如果矩阵规模小、不想额外安装依赖库,优先用生成器表达式直接边减边求和,不需要存储完整的中间减法矩阵,内存开销最低:

a = [
    [2, 3, 4],
    [1, 5, 2]
]
b = [
    [1, 4, 2],
    [0, 1, 3]
]

# 直接计算差值总和,无额外中间存储
total = sum(a[i][j] - b[i][j] for i in range(len(a)) for j in range(len(a[0])))
print(total) # 输出6

如果需要保留减法后的矩阵结果,可分开实现:

# 先计算矩阵减法结果
diff = [[a[i][j] - b[i][j] for j in range(len(a[0]))] for i in range(len(a))]
# 再对所有元素求和
total = sum(num for row in diff for num in row)

print(diff) # 输出[[1, -1, 2], [1, 4, -1]]
print(total) # 输出6

2. 大规模数值计算场景(numpy实现)

如果处理的矩阵规模大,优先用numpy实现,底层为C语言优化的运算逻辑,执行效率远高于纯Python,语法也更简洁:

import numpy as np

a = np.array([
    [2, 3, 4],
    [1, 5, 2]
])
b = np.array([
    [1, 4, 2],
    [0, 1, 3]
])

# 矩阵减法
diff = a - b
# 所有元素求和
total = diff.sum()

print(diff)
# 输出:
# [[ 1 -1  2]
#  [ 1  4 -1]]
print(total) # 输出6

内容的提问来源于stack exchange,提问作者Carlos Andrés del Valle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 14:12:03