Python 足球队联盟
假设我有3个团队,我想在这三个团队之间生成随机匹配。我使用itertools排列打印所有匹配项。问题是在游戏中生成分数。想象A队对B队(2-1)。如何在比赛中输入A队的2个进球和B队的1个进球 我已经打印了所有可能的匹配项。请注意,我使用了排列,因为A队对B队与B队对A队不同,因为一队在主场比赛,而在另一场比赛中在另一队主场比赛Python 足球队联盟,python,itertools,Python,Itertools,假设我有3个团队,我想在这三个团队之间生成随机匹配。我使用itertools排列打印所有匹配项。问题是在游戏中生成分数。想象A队对B队(2-1)。如何在比赛中输入A队的2个进球和B队的1个进球 我已经打印了所有可能的匹配项。请注意,我使用了排列,因为A队对B队与B队对A队不同,因为一队在主场比赛,而在另一场比赛中在另一队主场比赛 import itertools import random teams=['A','B','C'] def games(): permutations=ite
import itertools
import random
teams=['A','B','C']
def games():
permutations=itertools.permutations(teams,2)
for i in permutations:
print(i)
result=random.randint(0,5)
我的疑问是,在每次迭代中,我都必须在游戏中生成一个结果。您生成的是一个整数,但需要两个来表示匹配分数:
import itertools
import random
teams = ['A','B','C']
def games():
permutations = itertools.permutations(teams, 2)
for match in permutations:
home_team_score, away_team_score = random.randint(0, 5), random.randint(0, 5)
print(match, home_team_score, away_team_score)
games()
样本输出
('A', 'B') 4 2
('A', 'C') 0 1
('B', 'A') 2 5
('B', 'C') 1 2
('C', 'A') 2 4
('C', 'B') 1 1
例如,您可以使用该格式
for (home_team, away_team) in permutations:
home_team_score, away_team_score = random.randint(0, 5), random.randint(0, 5)
print('{} {} - {} {}'.format(home_team, home_team_score, away_team_score, away_team))
得到
A 4 - 4 B
A 0 - 4 C
B 3 - 4 A
B 1 - 0 C
C 2 - 1 A
C 3 - 5 B
输出:
乌龟是干什么的?我只是喜欢乌龟你不想有一个函数和一个同名的变量是的,对不起,我只是想让你知道答案。我会更改它您需要存储每个游戏结果吗?如果是这样的话,你应该考虑一下你希望你的数据是如何结构的。是的,但我想我会处理这部分。胜利等于3分,平局1分
import itertools
import random
teams=['A','B','C']
def make_games():
games=[]
permutations=itertools.permutations(teams,2)
for team_tuple in permutations:
game={}
team_one, team_two = team_tuple[0],team_tuple[1]
team_one_score, team_two_score=random.randint(0,5),random.randint(0,5)
game[team_one]=team_one_score
game[team_two]=team_two_score
games.append(game)
return games
print(make_games())
[
{'A': 1, 'B': 4},
{'A': 1, 'C': 0},
{'B': 5, 'A': 1},
{'B': 1, 'C': 1},
{'C': 1, 'A': 5},
{'C': 2, 'B': 3}
]