Python问题:从两个给定字典计算值的函数

2024-10-03 11:20:14 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我遇到的一个教程问题,在学习Python大约一个月之后,这对我来说是一个挑战,因为我以前从未遇到过此类问题。

我想从两个词典中计算给定“id”的总成本。
下面显示了我的词典:

a = {'HIN3': ('Plastic Wrap', 50), 'GIN2': ('Cocoa', 80), 'LIN1': ('Bayleaf', 25), 'TIN6': ('Powder Scent': 210), 'QIN8': ('Color 55': 75)}

第一个值是id,第二个值包含pair list,它包含名称和成本。

b = {'candy1': ('Choco fudge', [('HIN3', 1), ('GIN2', 5)]), 'candy2': ('Mint Lolly', [('LIN1', 3), ('GIN2', 1), ('HIN3', 1)]), 'candy3': ('MILK', [('HIN3', 1), ('TIN6', 4), ('QIN8', 1)])}

其中第一个值是dict b的id,第二个值是一个列表,其中包含生产产品所需的名称和成分。

现在我需要创建一个函数(get_cost(id)),该函数将给出给定dict b的总成本。
例如,get_cost('candy1')的结果将是450,因为它需要HIN3(50)的1和GIN2的5(5*80=400),因此成本是50+400=450。请注意,我想将成本作为整数返回。

Tags: 函数名称idgetdict词典成本cost
1条回答
网友
1楼 · 发布于 2024-10-03 11:20:14

首先,简单易懂的功能:

def getCost(id):
    total_cost = 0
    ingredients = b[id][1] # Second element of tuple is ingredient list

    for ingredient, amount in ingredients:
        total_cost += a[ingredient][1] * amount

    return total_cost

现在,一句可爱的话:

^{pr2}$

如果你没发现这些问题,让我知道。或者更好的办法是,自己解决它们:)毕竟,教程问题是供你探索的!玩玩,搞错,修复,再试一次。在

相关问题 更多 >