a = {u'1': ['abc', 'thanks', 2.0, 999.0],u'2': ['def', 'for', 2.0, 100.0],u'3': ['ghi', 'helping', 1.0, 99999.0],u'4': ['jkl', 'me', 3.0, 2120.0] etc:[etc]}
所以我试图让所有字典{}:列出[blah,blah,数字,数字],密钥:列表[blah,blah] ,数字,数字]等}这证明非常麻烦:(。我想要的输出是108557
,它来自(2 * 999)+ (2 * 100)+(1 * 99999)+(3 * 2120)。
我在这里找到答案Multiply keys*values in a dict?几乎解决了我的问题。通过使用a = {2: 4, 3: 2, 5: 1, 7: 1}
,他可以将此词典26
相乘,以获得sum([key * val for key, val in a.items()])
的答案。我在此代码中合并列表时遇到问题!提前感谢您的帮助。
答案 0 :(得分:3)
如果数字总是最后两个元素,您可以执行以下操作:
sum([val[-2] * val[-1] for val in a.values()])
使用Blckknght提示更新编辑