fork download
  1. class Klasemen:
  2. def __init__(self, daftar_klub):
  3. self.poin_klub = {klub: 0 for klub in daftar_klub}
  4.  
  5. def catatPermainan(self, klubKandang, klubTandang, skor):
  6. gol_kandang, gol_tandang = map(int, skor.split(":"))
  7. if gol_kandang > gol_tandang:
  8. self.poin_klub[klubKandang] += 3
  9. elif gol_kandang < gol_tandang:
  10. self.poin_klub[klubTandang] += 3
  11. else:
  12. self.poin_klub[klubKandang] += 1
  13. self.poin_klub[klubTandang] += 1
  14.  
  15. def cetakKlasemen(self):
  16. return dict(sorted(self.poin_klub.items(), key=lambda x: (-x[1], x[0])))
  17.  
  18. def ambilPeringkat(self, nomorPeringkat):
  19. klasemen_urut = self.cetakKlasemen()
  20. klub_list = list(klasemen_urut.keys())
  21. if 1 <= nomorPeringkat <= len(klub_list):
  22. return klub_list[nomorPeringkat - 1]
  23. else:
  24. return None
  25.  
  26. klasemen = Klasemen(['Liverpool', 'Chelsea', 'Arsenal'])
  27. klasemen.catatPermainan('Arsenal', 'Liverpool', '2:1')
  28. klasemen.catatPermainan('Arsenal', 'Chelsea', '1:1')
  29. klasemen.catatPermainan('Chelsea', 'Arsenal', '0:3')
  30. klasemen.catatPermainan('Chelsea', 'Liverpool', '3:2')
  31. klasemen.catatPermainan('Liverpool', 'Arsenal', '2:2')
  32. klasemen.catatPermainan('Liverpool', 'Chelsea', '0:0')
  33. print(klasemen.cetakKlasemen())
  34. print(klasemen.ambilPeringkat(2))
  35.  
Success #stdin #stdout 0.07s 14164KB
stdin
Standard input is empty
stdout
{'Arsenal': 8, 'Chelsea': 5, 'Liverpool': 2}
Chelsea