如何在函数中一次使用一个元素的列表/元组



我正在尝试编写一些代码,让我可以使用一个函数来获取商品的价格,并快速将它们相加。

因此,我的代码的简化版本目前看起来是这样的:

#Header = {Item, Price, Service Tax}
Dairy = {'Milk': [2.30, 0.16, 'Yes'],
'Butter': [4.50, 0.32, 'No']}
Cart = []
Cart.append('Milk')
Cart.append('Butter')
Collective = []
Collective.append(Cart[0])
print(sum(Collective))

当我寻找2.30和4.50的总和时,这会导致Unhashable error或根本不打印。

只需尝试使用以下代码:

print(sum([sublist[0] for sublist in Dairy.values()]))

输出:

6.8

如果你的意思是Dairy包含很多东西,但你只想要一些信息,它们的密钥在Cart中,那么你可以这样做:

#Header = {Item, Price, Service Tax}
Dairy = {'Milk': [2.30, 0.16, 'Yes'],
'Butter': [4.50, 0.32, 'No'],
'other': [42.50, 0.42, 'No']}
Cart = []
Cart.append('Milk')
Cart.append('Butter')
Collective = [Dairy[item][0] for item in Cart]
print(sum(Collective))

输出:6.8

相关内容

  • 没有找到相关文章

最新更新