2013-07-11 2 views
2

Я пишу программу для подсчета очков двух пользователей. Игра заканчивается, когда каждый из них набирает десять, и побеждает соответствующий игрок.python while loop не завершается

я написал время цикла как:

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)) 

ответ

2

Похоже, вы хотите

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

, так как вы хотите, чтобы цикл до конца, как только ни один из показателей достигает 10, при котором точка score != 10 будет false и, следовательно, полное контурное условие больше не будет выполнено.

(score1 != 10) or (score2 != 10) потребует и баллов 10 перед выходом.

+1

Спасибо, это помогло. :) – RamyaV