Python "Rock, Paper, Scissors" validation
Question: I have been making a rock paper scissors game, and it works like a dream.
However, when I try to add some validation in (shown with the `#`'s) my game
doesn't work. I'm not sure why this is the case.

My code is following:

    
    
        from random import randint
        from sys import exit
        computer = randint(1,3)
    
        r = "r"
        p = "p"
        s = "s"
        print ("The computer has chosen. Your turn")
        player = input ("r is Rock, p is Paper, and s is Scissors. Put your letter in HERE-----> ")
    
        #from here
    
        if (player != r or p or s): 
                player = input ("That wasn't r, p, or s. Please try again. r is Rock, p is Paper, and s is Scissors. Put your letter in HERE-----> ")
                if (player != r or p or s) :
                        print ("Can you srsly not understand that " + player + " is not r, p, or s? I give up")
                        exit()
    
    
        #to here
    
    
    
        if (computer == 1):
                AI = ("rock")
    
        if (computer == 2):
                AI = ("paper")
    
        if (computer == 3):
                AI = ("scissors")
    
        if (player == r and computer == 1):
                print ("lol draw")
                exit()
    
        if (player == p and computer == 2):
                print ("lol draw")
                exit()
    
        if (player == s and computer == 3):
                print ("lol draw")
                exit()
    
        if (player == r and computer == 3):
                print ("You WIN!!!!!! AI chose " + AI)
    
        if (player == p and computer == 1):
                print ("You WIN!!!!!! AI chose " + AI)
    
        if (player == s and computer == 2):
                print ("You WIN!!!!!! AI chose " + AI)
    
        if (player == s and computer == 1):
                print ("You LOSE!!!!!! AI chose " + AI)
    
        if (player == r and computer == 2):
                print ("You LOSE!!!!!! AI chose " + AI)
    
        if (player == p and computer == 3):
                print ("You LOSE!!!!!! AI chose " + AI)
    


Answer: The `or` operator again.

    
    
    player != r or p or s
    

Should be

    
    
    player not in (r, p, s)
    

or similar.

**Explanation:**

`A or B` evaluates to `A`, if `A` is considered true (truey). If `A` is
considered falsy (e.g. `False`, `0`, `0.0`, `[]`, `''`), `A or B` evaluates to
`B`.

`player != r or p or s` is the same as `(player != r) or p or s`. Now `(player
!= r) or p or s` evaluates to `True` if `player != r` and to `p` otherwise. As
both `True` and `p` are "truey", these two lines are equivalent:

    
    
    if player != r or p or s:
    if True:
    

