def player_input():
player1=''
player2=''
while player1 != "X" or player1 !="O":
player1=input('Choose from X or O').upper()
if player1=='X':
player2 = 'O'
return (player1,player2)
elif player1=='O':
player2='X'
return (player1,player2)
When I am running it is going to infinity loop. But,when I am changing my while loop to while not(player1 =="X" or player1=="O")
my code is running fine. So can someone explain the difference between my both while loop?