title: Python: Number Guessing Game
body: <p>Your program chooses the number to be guessed by selecting an integer at random in the range 1 to 1000 (inclusive). If the player's guess is incorrect, your program should loop until the player finally gets the number right.  Your program should keep telling the player Too high or Too low to help the player “zero in” on the correct answer.  After a game ends, the program should prompt the user to enter "y" to play again or "n" to exit the game.</p>
  
  <p>My problem is how do you generate a new random integer each time they want to play again? </p>
  
  <p>Here's my code. </p>
  
  <pre><code>import random
  
  randomNumber = random.randrange(1, 1000)
  
  def main():
      print ""
      number = input("I have a number between 1 and 1000. Can you guess my number? Please type your first guess: ")
      guess(number)
  
  def guess(number1):
      correct = False
      while not correct:
          if number1 &gt; randomNumber:
              print "Too high. Try again."
              print ""
          elif number1 &lt; randomNumber:
              print "Too low. Try again."
              print ""
          elif number1 == randomNumber:
             break
          number1 = input ("What number do you guess? ")
      if number1 == randomNumber:
         playAagain = raw_input ("Excellent! You guessed the number! Would you like to play again (y or n)? ")
         if playAagain == "y":
              main()
  
  main()
  </code></pre>