检查游戏是否已结束

  • 本文关键字:结束 是否 游戏 python
  • 更新时间 :
  • 英文 :

players = [{'name': 'Player 1', 'score': 23, 'stayed': False, 'at_14': True, 'bust': True},
{'name': 'Player 2', 'score': 17, 'stayed': True, 'at_14': True, 'bust': False},
{'name': 'Player 3', 'score': 19, 'stayed': True, 'at_14': True, 'bust': False},
{'name': 'Player 4', 'score': 19, 'stayed': True, 'at_14': True, 'bust': False}]
def end_of_game(players):

所以这是一个游戏,在每一轮之后,我都需要调用函数来检查游戏是否结束。如果任何玩家有";停留是假的;半身像;如果也是False,则代码必须返回";错误";。如果";"停留";为假,并且";半身像;如果为True,反之亦然,则代码将转到下一步。有人知道我该怎么做吗?

实际上,使用可以非常简单地完成

all(player["stayed"] or player["bust"] for player in players )

这个表达式检查每个游戏者;"停留";或";半身像;是真的。如果有一个播放器同时为False,则all函数将返回False。

这里有一个简单的list,有4个项目或播放器。每个列表项都包含一个dict,因此您可以像往常一样使用for循环遍历list,并通过筛选关键字从dict中获取值。

可能是这样的:

def end_of_game(players):
for player in players:
if player['stayed'] or player['bust']:
return True
return False

学习这一点的一个好方法是使用json's或仅使用api responses

相关内容

最新更新