2

我正在为班级制定锦标赛计划。该程序应该让用户输入所有团队名称,选择2个团队,并询问用户哪个团队获胜,获胜者将继续前进。我想通过使用布尔值在一个数组中完成这一切。我希望数组中的所有值都以 开头false,如果他们获胜,则团队名称将变为true

到目前为止我有这个

amount = int(raw_input('How many teams are playing in this tournament?   ')
teams = []
i = 0
while i < amount:
    teams.append(raw_input("please enter team name:   ")
    i = i + 1

现在,我怎样才能列出整个清单false

4

2 回答 2

3

在我看来,使用字典而不是列表是一种更好的方法。您只需将每个团队名称作为键添加到字典中,并将其对应的值分别设置为Falseor True

amount = int(raw_input('How many teams are playing in this tournament?   ')
teams = {}
i = 0
while i < amount:
    team_name = raw_input("please enter team name: ")
    teams[team_name] = False
    i = i + 1

如果您想选择赢得比赛的球队,您只需在字典中查找球队名称并将其值设置为True。这样,您可以将团队名称和布尔值保留在一个数据结构中,而不需要两个数据结构或总是用根本没有意义的布尔值替换团队名称。

于 2013-04-02T17:27:39.903 回答
2

由于您已经知道团队的数量(数量),您可以这样做

team_status = [False]*amount

teams在这里,和的索引team_status是相同的,因此每次您想要特定团队的状态时都可以进行简单的查找。

或者

你可以用字典

amount = int(raw_input('How many teams are playing in this tournament?   ')
teams = {}
for i < range(amount):
    team_name = raw_input("please enter team name:   ")
    teams.update({team_name: False})
于 2013-04-02T17:21:25.803 回答