[英]Python: How to access tuple values inside a dictionary of a dictionary
我有一个dict设置的字典如下:
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
谢谢,
你可以这样做:
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 # ???
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.