如果您知道如何遍历字典、使用键索引字典并理解字典,那将是一个简单的过程
>>> total = {key: price * stock[key] for key, price in prices.items()}
>>> total
{'orange': 48.0, 'pear': 45, 'banana': 24, 'apple': 0}
即使您的 Python 实现不提供字典理解(< Py 2.7),您也可以将其作为列表理解传递给dict
内置
>>> dict((key, price * stock[key]) for key, price in prices.items())
{'orange': 48.0, 'pear': 45, 'banana': 24, 'apple': 0}
如果您不想在 2.X 和 3.X 之间兼容,您也可以使用 iteritems 代替 items
{key: price * stock[key] for key, price in prices.iteritems()}
如果您想要一个总的结果,您可以将单个产品传递给sum
>>> sum(price * stock[key] for key, price in prices.items())
117.0