Python:如何访问字典中嵌套字典的元组值

4
我有一个如下的字典嵌套字典的设置:

from collections import namedtuple

Point = namedtuple('Point', 'r w')
mydict= {
    'user1': {'item1': Point(2.5,0.1),'item2': Point(3.5,0.6)},
    'user2': {'item1': Point(3.0,0.3), 'item3': Point(3.5,0.8)},
    'user3': {'item1': Point(2.0,0.4),'item3': Point(0.5,0.1), 'item4': Point(1.5,0.7)}
}

我希望找到一种高效的方法,获取Point中值的平均值。即我想要获得'item3'的r点值(point.r)的平均值,它是(3.5+0.5)/2。
谢谢,

2
请记住,如果您有不平衡的分隔符(如{和}),则无需使用反斜杠来继续行。 - Ned Batchelder
1个回答

7
你可以像这样做:

你可以按照以下步骤进行操作:

r_vals = [u['item3'].r for u in mydict.itervalues() if 'item3' in u]
if r_vals:
   r_avg = sum(r_vals)/len(r_vals)
else:
   r_avg = 0   # ???

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接