Again, not entirely true.
a = 1
while a == 1:
a = input("A? ")
if a != 1:
print "Did this just happen?"
If the user enters the value 2 into the prompt, he/she will get the message:
Did this just happen?.
The while loop condition is only tested before it wraps back around to the top.
But we digress further from the problem. It's not your while loop, and it's not the number of guesses. It's the placement of where you decide to print the result that suffers as a result of your program flow. You don't want it inside the while block. It's not part of the while logic. Get er' out of there!