from functools import reduce
from operator import mul
d = {'itemA': (1, 0.5), 'itemB': (2, 0.3), 'itemC': (3, 0.7)}
d1={k:reduce(mul, t) for k,t in d.items()}
>>> sum(d1.values())
3.1999999999999997
或者简单地说:
>>> sum(reduce(mul, t) for t in d.values())
3.1999999999999997
或者,评论中指出的一个更好的方法:
import math
>>> sum(map(math.prod, d.values()))
3.1999999999999997
4条答案
按热度按时间sshcrbum1#
普通Python:
输出:
guicsvcw2#
您可以执行以下操作:
或者简单地说:
或者,评论中指出的一个更好的方法:
7kjnsjlb3#
eoigrqb64#