python列表乘以每个值

时间:2017-08-04 05:19:06

标签: python python-3.x list

我想知道如何将两个不同列表中的每个元素相乘。

例如:

list_a = [1,2,3,4,5] list_b = [10,20,30,40,50]

我想要1X10 2X20 3X30 4X40 5X50

以便结果为10, 40, 90, 160, 250

如果你能帮助我,我将非常感激。

5 个答案:

答案 0 :(得分:3)

您可以使用zip功能,如下所示。

>>> list_a = [1,2,3,4,5]
>>> list_b = [10,20,30,40,50]
>>> [(x[0]*x[1]) for x in zip(list_a,list_b)]
[10, 40, 90, 160, 250]

答案 1 :(得分:1)

使用zip()

list_a = [1,2,3,4,5]
list_b = [10,20,30,40,50]
final = [k*v for k, v in zip(list_a, list_b)]
print final

输出:

[10, 40, 90, 160, 250]

答案 2 :(得分:0)

a = [1,2,3,4,5] 
b = [10,20,30,40,50]
print [a[i]*b[i] for i in range(len(b))]

这对你有帮助

答案 3 :(得分:0)

a = [1,2,3,4,5]
b = [i*i*10 for i in a]

答案 4 :(得分:-1)

更清洁的版本是:

a,b = [1,2,3,4,5],[10,20,30,40,50]
for i,j in zip(a,b):
    print '%d x %d = '%(i,j),'%d units'% ((i*j))