Charles Yeomans wrote:
Let me offer a bit of editing....
Finally, I'd remove correct_password_given from the loop test, and replace it with a break statement when the correct password is entered.

password = "qwerty"
correct_password_given = False
attemptcount = 0
MaxAttempts = 3
while attemptcount < MaxAttempts:
  guess = raw_input("Enter your password: ")
  guess = str(guess)
  if guess != password:
      print "Access Denied"
      attemptcount = attemptcount + 1
  else:
      print "Password Confirmed"
      correct_password_given = True
      break


And even simpler:
    PASSWORD = "qwerty"
    MAXRETRY = 3
    for attempt in range(MAXRETRY):
        if raw_input('Enter your password: ') == PASSWORD:
            print 'Password confirmed'
            break # this exits the for loop
        print 'Access denied: attempt %s of %s' % (attempt+1, MAXRETRY)
    else:
        # The else for a for statement is not executed for breaks,
        # So indicates the end of testing without a match
        raise SystemExit # Or whatever you'd rather do.

--Scott David Daniels
scott.dani...@acm.org
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to