迭代dict的value
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
sum = 0.0
for x in d.values():
? ? sum = ( sum + x ) ?/ len(d)
print sum
這樣子為什么不行啊?
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
sum = 0.0
for x in d.values():
? ? sum = ( sum + x ) ?/ len(d)
print sum
這樣子為什么不行啊?
2017-04-07
舉報
2017-04-08
去掉:/len(d),先計算出總和,最后再除以總數算平均值
2017-04-24
這樣為什么不行,因為你在循環里每次都除以長度。本來如果是每個元素除以一次長度再求和也是對的。
但是sum = ( sum + x ) ?/ len(d)這句在循環里導致第一個元素被除了n(長度)次。第二個元素被除了(n-1)次。只有最后一個元素是只被除了一次。所以不對。