我想添加他每個球員已經分配給他的得分項數量,並發現返回每個球員歸因於他的得分數量是有問題的。我的代碼如下,但我只是不能似乎得到了最後一關:尋找每個球員的得分數
with open("players.dat") as f:
group = []
for line in f:
fields = line.split()
group.append((fields[0], int(fields[1])))
print(group)
from collections import deque
player_stats = {}
with open("players.dat") as f:
for line in f:
name, score = line.split()
player_stats.setdefault(name, deque(maxlen=3))
player_stats[name].append(int(score))
print(player_stats)
print(len(score))
player_totals = {name: sum(scores) for name, scores in player_stats.items()}
print(player_totals)
player_totals = {name: max(scores) for name, scores in player_stats.items()}
print(player_totals)
player_totals = {name: min(scores) for name, scores in player_stats.items()}
print(player_totals)
#testing counting number of scores for each player
#from collections import Counter
#items = Counter(val[1] for val in player_stats.values())
#print(items)
player_totals = {name:len(score)}
print(player_totals)
我的數據文件是:
rooney 12
rooney 23
rooney 56
rooney 27
ronaldo 14
ronaldo 34
messi 23
messi 45
messi 12
messi 56
我基本上是試圖找到每個球員的平均得分。
你爲什麼要使用'deque'這裏對象?這將只存儲*最後3個值*而不是所有的值。 – 2014-12-06 12:35:15
我只需要最後三個值。然後對於每個玩家我只需要知道存儲了多少個值。我有每個球員的總和,最大值和最小值,但我也需要這個平均值,這就是爲什麼我需要知道每個球員存儲了多少個值 – 2014-12-06 12:40:58