-
Notifications
You must be signed in to change notification settings - Fork 0
/
getTopChamps.py
48 lines (41 loc) · 1.35 KB
/
getTopChamps.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import json, os, heapq
def getTop10(champs):
keys = []
for champ in champs:
for key in champ:
keys.append(key)
keys = heapq.nlargest(20, keys)
top10 = []
for champ in champs:
for key in champ:
if key in keys:
top10.append(champ)
return top10
top511Champs = []
top514Champs = []
path = "C:/Users/rlher_000/Documents/RiotAPIChallenge/jsonFiles/champions"
for jsonFile in os.listdir(path):
with open(path + "/" + jsonFile) as f:
for line in f:
line = line.strip()
data = json.loads(line)
if(data["5.11"]["total"]["gamesPlayed"] == 0): #3994 / 2): # 3994 is average gamesPlayed of all champs
carryRate511 = 0
else:
carryRate511 = float(data["5.11"]["total"]["gamesCarried"]) / float(data["5.11"]["total"]["gamesPlayed"])
#carryRate511 = int(data["5.11"]["total"]["gamesCarried"])
if(data["5.14"]["total"]["gamesPlayed"]== 0):#3994 / 2):
carryRate514 = 0
else:
carryRate514 = float(data["5.14"]["total"]["gamesCarried"]) / float(data["5.14"]["total"]["gamesPlayed"])
#carryRate514 = int(data["5.14"]["total"]["gamesCarried"])
name = data["name"]
newObj1 = {carryRate511: name}
newObj2 = {carryRate514: name}
top511Champs.append(newObj1)
top514Champs.append(newObj2)
f.close()
top10Champs511 = getTop10(top511Champs)
top10Champs514 = getTop10(top514Champs)
print(top10Champs511)
print(top10Champs514)