Alberto Troiano said unto the world upon 2005-04-11 17:43:
Hi Brian
Thanks for correcting me about the variable and reserved word differences (just
for the record the problem is that my english is not so good, you see I'm from
Bolivia so pardon my francôis :P)
Hi Alberto,
I wouldn't have known you felt you had difficulties in English had you
not said so. :-)
About the code I posted let me stand for it because it sure works like a charm.
I tested and the Option 1 gives the message of "That has been difficult" stuff
when you pass the 3 errors and still ask you for password.
The option 2 loops 3 times unless you put unicorn or whatever is the password
and at the third time it gives the message and then increment the current_count
once more to take you out of the while loop
Test it and let me know how it went, and also if I have a few problems with my
writing please let me know as I will try to correct them
You are absolutely right that your `Option 2' code does exit the loop.
I somehow missed that the while condition had an `and' in it :-[ My
apologies.
Your second post said you intended the final if clause to be:
if password=="unicorn":
# etc
I've changed it to
if password != "unicorn":
# etc
and get what I would think is correct behaviour.
So, it now reads:
password = None # necessary pre-setting of names
current_count = 0
count = 3
while password != "unicorn" and current_count <= count:
if current_count < count:
password=raw_input("Password:")
current_count=current_count+1
else:
current_count=current_count+1
print "That must have been complicated"
if password!="unicorn":
print "Try again Later"
else:
print "Welcome in"
I would suggest that it be done like this, though:
# pre-sets as before go here
while password != "unicorn":
if current_count < count:
password = raw_input("Password:")
if password=='unicorn':
print 'Welcome in'
else:
print "That must have been complicated"
print "Try again Later"
break
current_count += 1
This pushes all of the actions consequent on the password into the
password fetching loop and uses just a single incrementing line.
Anyway, once again, sorry for misreading and mis-correcting you.
Best,
Brian vdB
_______________________________________________
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor