Я новичок в python, и я пытаюсь создать решение для оператора.
Мы можем прочитать имя игрока из Excel.
Решение состоит в том, чтобы ввести имена всех 22 игроков и отобразить все команды (11 игроков) с капитаном и вице-капитаном.
Здесь я могу создать случайную команду из 22 игроков, но вышеупомянутые ограничения соблюдены.
import random
def get_random_player(players):
return players.pop(random.randrange(len(players)))
team_1 = []
players = ["Rahul","Virat","Sachin","King"] //22 players
for x in range(len(players) // 2):
team_1.append(get_random_player(players))
print(team_1)
Пример :
Team 1 :
Team1_Palyer1
Team1_Palyer2
Team1_Palyer3
Team1_Palyer4
Team1_Palyer5
Team1_Palyer6
Team1_Palyer7
Team1_Palyer8
Team1_Palyer9
Team1_Palyer10
Team1_Palyer11
Team 2 :
Team2_Palyer1
Team2_Palyer2
Team2_Palyer3
Team2_Palyer4
Team2_Palyer5
Team2_Palyer6
Team2_Palyer7
Team2_Palyer8
Team2_Palyer9
Team2_Palyer10
Team2_Palyer11
Output :
Team1_Palyer1
Team2_Palyer1
Team1_Palyer3(c)
Team2_Palyer5
Team1_Palyer5
Team2_Palyer6
Team2_Palyer7(vc)
Team1_Palyer4
Team2_Palyer9
Team2_Palyer10
Team1_Palyer10
Здесь у нас есть 5 игроков из команды 1 и 6 игроков из команды 2. Team1_Palyer3 назначен капитаном, а Team2_Palyer7 — вице-капитаном.
Нужно отображать все команды, которые можно создать.
🤔 А знаете ли вы, что...
Python обладает обширной документацией и активным сообществом разработчиков.
Как создать сколько 11 игроков Команда может быть создана из 22 игроков. можно использовать формулу комбинаций сколько будет создана команда
22C11 = 22! / (11! * (22-11)!) = 705,432
Всего будет создано 705 432 команды.
Код:
import itertools
players = ['Team1_Player1', 'Team1_Player2', 'Team1_Player3', 'Team1_Player4', 'Team1_Player5', 'Team1_Player6', 'Team1_Player7', 'Team1_Player8', 'Team1_Player9', 'Team1_Player10', 'Team1_Player11', 'Team2_Player1', 'Team2_Player2', 'Team2_Player3', 'Team2_Player4', 'Team2_Player5', 'Team2_Player6', 'Team2_Player7', 'Team2_Player8', 'Team2_Player9', 'Team2_Player10', 'Team2_Player11']
team_combinations=list(itertools.combinations(players, 11))
print(len(team_combinations)) #705432
#To print the team.
"""
for i,team in enumerate(team_combinations, start=1):
print(f"Team {i}:")
for player in team:
print(player)
"""
Примечание. Просто неясно, как вы создали капитана и вице-капитана своей команды, поэтому он отсутствует.