如何从多个元组添加值?

时间:2017-03-24 18:05:49

标签: python tuples multiplying

所以我试图创建一个程序,它将返回股票利润,并将值存储在元组中。这些值以(股票代码,#of股票,买入价格,售价)的方式存储。例如:

('CAT', 25, 43.50, 67.75), ("MSFT', 100, 87.65, 82.50).

为了计算利润,我使用公式:

shares * (price sold - price bought)

如何从这些元组中获取值来计算两只股票的总利润?我写了一些代码,但不知道如何继续。

def stocks_value(portfolio):    
    total = 0
    for value in portfolio:
        total = value[1] * (value[3] - value[2])
        return total

2 个答案:

答案 0 :(得分:3)

这会做你需要的吗?:

def stocks_value(portfolio):    
    total = 0
    for value in portfolio:
        total += value[1] * (value[3] - value[2])
    return total

您也可以尝试:

total = sum(value[1] * (value[3] - value[2]) for value in portfolio)

答案 1 :(得分:0)

对元组的值进行索引处理,如列表。假设portfolio是一个元组列表,看起来您的代码大部分都是正确的,只需将total = value[1] ...更改为total += value[1] ...,如果您正在尝试查找总利润总额