我在这样的字典中嵌套了一个元组

record = {1: ('kg', '2003, 06, 05', 12)}
record[2] = ('kg', '2008, 06, 05',40)


我需要在字典中添加所有元组的所有kg值,但是我不知道如何访问值12和40。

最佳答案

鉴于:

    record = {1: ('kg', '2003, 06, 05', 12)}
    record[2] = ('kg', '2008, 06, 05',40)


然后我们有

   record = {
       1: ('kg', '2003, 06, 05', 12),
       2: ('kg', '2008, 06, 05',40)
   }


所以你可以做sum([t[-1] for t in record.values()])

values方法返回字典所有值的可迭代值。 sum只是将一个iterable的所有元素相加。

该列表理解只是这样做:“对于记录值中的每个元组,将元组的最后一个对象添加到列表中”

我们得到sum([12, 40]),所以它成为52

编辑:使用-1总是返回最后一个对象,并且可以在任何长度上工作

10-07 15:07