列表中每个元组的元素与列表中每个元素的相乘

时间:2019-11-05 19:20:41

标签: python list tuples

对于给定的元组列表和整数列表,如何获取结果的元组列表(“ L3”),其中每个新元组都是L1和L2中元组元素相乘的结果。

L1 = [(1,2,3),(2,3,4),(6,3,4),(9,8,7)]
L2 = [20,55,90]
L3 = [(20, 110, 270), (40, 165, 360), #and so on ]

1 个答案:

答案 0 :(得分:0)

假设L2的尺寸要与L1的元组尺寸匹配。 使用numpy广播操作,可以将其作为数组乘法来完成。

L1 = [(1,2,3),(2,3,4),(6,3,4),(9,8,7)]
L2 = [20,55,90]

import numpy as np

M1=np.array(L1)
V1=np.array(L2)

print(f"M1 dimension is {M1.shape} \n V1 dimensions are {V1.shape}")

R=V1*M1
result=[tuple(x) for x in list(R)]