74 lines
1.9 KiB
Python
74 lines
1.9 KiB
Python
from random import choice
|
|
|
|
|
|
class Turn():
|
|
def __init__(self, name, matchs):
|
|
self.name = name
|
|
self.matchs = matchs
|
|
self.match_history = []
|
|
|
|
def rambling(self, player_list):
|
|
"""jumble (random order) players in list and return list"""
|
|
self.tmp_list = []
|
|
self.picked_player = []
|
|
for i in range(2^len(player_list)):
|
|
self.picked_player = choice(player_list)
|
|
self.tmp_list.append(self.picked_player)
|
|
return self.tmp_list
|
|
|
|
|
|
def sorting(self, player_list):
|
|
"""order players on score : use second index (for every item in the list) as key (given by function score)"""
|
|
def score(couple):
|
|
return couple[1]
|
|
return sorted(player_list, key=score)
|
|
|
|
|
|
def associate(self, player_list):
|
|
"""create a match list"""
|
|
self.match_list = []
|
|
self.couple = ()
|
|
for i in range(len(player_list)):
|
|
if i % 2 == 0 :
|
|
self.couple = (player_list[i][0], player_list[i+1][0])
|
|
if self.couple in self.match_history:
|
|
self.couple = (player_list[i][0], player_list[i + 2][0])
|
|
self.match_list.append(self.couple)
|
|
else:
|
|
self.match_list.append(self.couple)
|
|
|
|
self.match_history.append(self.name)
|
|
self.match_history.append(self.match_list)
|
|
return self.match_list
|
|
|
|
|
|
def matchmarking(self, player_list):
|
|
pass
|
|
|
|
list = [['Player1', 8],
|
|
['Player2', 2],
|
|
['Player3', 0],
|
|
['Player4', 5],
|
|
['Player5', 8],
|
|
['Player6', 3],
|
|
['Player7', 1],
|
|
['Player8', 6],
|
|
['Player9', 3],
|
|
['Player10', 4],
|
|
['Player11', 3],
|
|
['Player12', 2],
|
|
['Player13', 8],
|
|
['Player14', 4],
|
|
['Player15', 2],
|
|
['Player16', 7]]
|
|
|
|
tour = Turn("tour1", 1)
|
|
|
|
print(tour.sorting(list))
|
|
print(tour.rambling(list))
|
|
|
|
print(tour.associate(tour.sorting(list)))
|
|
|
|
print(f"Voici l'historique des matchs : {tour.match_history}")
|
|
|
|
tour2 = Turn() |