【发布时间】:2011-11-12 14:32:08
【问题描述】:
我可以从我写的开始:
for player in self.players:
player.shot()
if self.players[0].best > self.players[1].best and self.players[2].best:
self.players[0].wins += 1
print ("Winner: ", self.players[0].name, "\nResult: ", self.players[0].best)
elif self.players[1].best > self.players[0].best and self.players[2].best:
self.players[1].wins+=1
print("Winner: ", self.players[1].name, "\nResult: ", self.players[1].best)
我知道如何创建一个循环,但我不知道在比较对象值时如何使用它。 这只有在我知道有多少玩家的情况下才有效,所以如果有 4 个玩家,上面的代码将毫无用处。 我如何在返回最高 self.best 值的循环中编写这个?
【问题讨论】:
-
我不认为您的比较符合您的要求。例如。
self.players[0].best > self.players[1].best and self.players[2].best是(self.players[0].best > self.players[1].best) and self.players[2].best;即self.players[2].best被视为True(非零)或False(零)。 -
我认为这就是你想要缩进的意思,但这真的很难说。空格在 Python 中很重要。请尽量保持一致。
-
我知道这是不正确的,但我想因为无论如何我都会改变它。谢谢!