python - 有没有办法在 Python 中同时使用两个列表执行计算?
问题描述
例如,如果我希望列表 a 中的值与列表 B 中相同位置的值相乘:
A = [1,2,3] B = [4,5,6] 那么所需的计算是:1 乘以 4、2 乘以 5 和 3 乘以 6
解决方案
使用列表理解(比 for 循环更快):
>>> res_list = [ls1[i] * ls2[i] for i in range(len(ls1))]
或者
Numpy(最快的方法):
>>> import numpy as np
>>> ls1 = np.array([1,2,3,4])
>>> ls2 = np.array([2,1,6,5])
>>> res = ls1 * ls2
>>> print(res)
array([2,3,18,20])
或者
for 循环(最慢但易于阅读):
res= []
for i in range(len(a)):
res.append(ls1[i]*ls2[i])
print(res)
推荐阅读
- typescript - 打字稿:为什么 PromiseLike 在异步函数的对象中可能是 this 的类型?
- python - 改变类外的类属性值
- python - 类的澄清
- javascript - 使用 fetch 时如何访问 JSON?
- java - 使用低级 Kafka Stream API 执行 context.forward() 时的 NPE
- django - Django 组经理获取每个成员角色
- angular - 组件之间通信中的数据重复
- ruby - 使用 object.get 时内存使用效率低下
- javascript - js:迭代嵌套对象的更好方法?
- c++ - CMAKE 对上游 C++ Header-only 库的依赖