功能:
def unique_common(a,b):
我有两个列表,让我们说:
a = [2, 3, 5, 7, 9]
和另一个清单
b = [5, 8, 4, 1, 11].
此列表b为您提供与第一个列表对应的每个项目的每件商品价格。
例如,如果您想购买第一件商品的2件,每件售价5美元,购买3件第二件商品,每件售价8美元,依此类推。
我想写一个函数来计算列表a中项目的总价格。例如,结果将是
160 = 2 * 5 + 3 * 8 + 5 * 4 + 7 * 1 + 9 * 11
答案 0 :(得分:4)
sum
和zip
:
>>> a = [2, 3, 5, 7, 9]
>>> b = [5, 8, 4, 1, 11]
>>> sum(count*price for count, price in zip(a,b))
160
请告诉我们如何将列表a和b作为参数提供给def unique_common(a,b)等函数
>>> def total_price(a, b):
... return sum(count*price for count, price in zip(a,b))
...
>>> a = [2, 3, 5, 7, 9]
>>> b = [5, 8, 4, 1, 11]
>>> total_price(a, b)
160
答案 1 :(得分:1)
也许解决方案是使用NumPy,代码应该是非常不言自明的:
import numpy as np
a = np.array([2,3,5,7,9])
b = np.array([5,8,4,1,11])
c = a*b
d = np.sum(c)
print(d)
答案 2 :(得分:0)
您也可以使用map
:
>>> a = [2, 3, 5, 7, 9]
>>> b = [5, 8, 4, 1, 11]
>>> sum(map(lambda x: x[0] * x[1], zip(a, b)))
160