title: Why does the while loop not stop when a variable becomes 0? (Python)
body: <p>I have a variable called lives in a while loop. I want it to stop the function when it becomes 0. This doesn't happen and when I print the variable it says the value is in the negatives and it doesn't stop the loop. It also has another condition which is players. When I remove that condition, it works. This is really confusing. Can someone explain it to me? (Keep in mind I am not very experienced and I just started learning python)</p>
  <pre><code>import random
  global players
  global lives
  players = 10
  lives = 5
  def getRandom():
      players = 10
      lives = 5
      print(&quot;There are 9 people around you. You and the computer will both guess a number from 1 to 5. If your numbers are the same, that amount of players will be out, but if your answers are different, you lose a life. You have 5 lives and you get an extra one if you both guess the same number. Good Luck!&quot;)
      while(lives &gt; 0 or players &gt; 0):
            myGuess = input(&quot;What number do you choose&quot;)
            compGuess = random.randint(1,5)
            myGuess = int(myGuess)
            print(f&quot;Computer chose {compGuess}&quot;)
            if compGuess == myGuess:
                players = players - compGuess
                if myGuess == 1:
                    print(f&quot;You took out {compGuess} player&quot;)
                else:
                  print(f&quot;You took out {compGuess} players&quot;)
            else:
                lives -= 1
                print(f&quot;You lost a life! You now have {lives} lives remaining&quot;)
                print(f&quot;There are {players} players left&quot;)
  getRandom()
  </code></pre>