python - 添加矩阵python
问题描述
A = [[1,1,1,1],[1,1,1,1]]
B = [[1,1,1,1], [1,1,1,1]]
sum = []
m=len(A[0])
n=len(A)
for i in range(n):
for j in range(m):
sum.append(A[i][j]+B[i][j])
print(sum)
我有结果[2,2,2,2,2,2,2,2]
,但我需要[[2,2,2,2],[2,2,2,2]]
。
解决方案
考虑numpy
。
>>> import numpy as np
>>> np.add(A, B)
array([[2, 2, 2, 2],
[2, 2, 2, 2]])
如果您不想使用numpy
,请考虑以下事项:
>>> [[sum(pair) for pair in zip(sub1, sub2)] for sub1, sub2 in zip(A, B)]
[[2, 2, 2, 2], [2, 2, 2, 2]]
也不要使用,sum = []
你会重新分配内置sum
函数,导致TypeError: 'list' object is not callable
错误。
推荐阅读
- sql - 每周而不是每天显示 COUNT(*)
- html - 如何在标签内打断
- ruby-on-rails - 如何根据多个条件定义 has_many 范围?
- design-patterns - 是否有一种设计模式可以在游戏开发中的 SoA 集合中迭代所有相同类型的数组?
- docker-compose - docker compose 中的 context 和 build 有什么区别?
- java - 在 Java 中实现斐波那契矩阵算法
- c++ - C ++ system()函数未运行所有wimdows程序
- python - 我可以将图像列表传递给 ffmpeg-python 的输入法吗
- flutter - 在 Flutter 应用中使用多个提供程序
- data-mining - 如何将我的模型应用于 WEKA 中的新数据集?