python while循环不会终止

时间:2013-07-11 00:54:18

标签: python-3.x while-loop

我正在编写一个计算两个用户得分的程序。当他们中的任何一个得分为10并且相应的玩家获胜时,游戏结束。

我把while循环写成:

while (score1 != 10) or (score2 != 10):
    ...

我的程序没有终止。

以下是代码:

player1 = input("Enter name for Player1")
player2 = input("Enter name for Player2")
score1=0
score2=0


print ("Score for Player1 is: %d,Score for player2 is :%d" %(score1,score2))

while (score1 != 10) or (score2 != 10):
    player =input("enter name for player")

    if player is player1:
        score1=score1+1
    if player is player2:
        score2=score2+1
    print ("Score for Player1 is: %d,Score for player2 is :%d" %(score1,score2))

1 个答案:

答案 0 :(得分:2)

看起来像你想要的

while (score1 != 10) and (score2 != 10):

因为您希望在其中一个分数达到10时结束循环,此时score != 10将为false,因此整个循环条件将会不再满足。

退出前,

(score1 != 10) or (score2 != 10)要求两个分数为10