這個代碼為什么不能用?len(d.itervalues())出錯
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
sum = 0.0
for v in d.itervalues():
? ? sum = sum + v
print sum / len(d.itervalues())
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
sum = 0.0
for v in d.itervalues():
? ? sum = sum + v
print sum / len(d.itervalues())
2020-04-21
舉報
2020-06-11
在python3中itervalues()方法會報錯,建議使用values().
2020-05-17
你用這個你根本不知道長度呀,完全是想當然,value只是一個屬性,并不是一個數據類型
2020-04-22
可以直接使用 len(d)
2020-04-22
1.?values()?方法實際上把一個 dict 轉換成了包含 value 的list。
2. 但是?itervalues()?方法不會轉換,它會在迭代過程中依次從 dict 中取出 value,所以 itervalues() 方法比 values() 方法節省了生成 list 所需的內存。
如上所說,values可以用,因為他轉成了一個list,list有對應的length,而itervalues沒有轉換,只是單單取出對應的value,value是int類型所以取得length 會報錯