[Tutor] What's wrong with this code?

Andre Engels andreengels at gmail.com
Tue Jul 5 08:44:50 CEST 2005


>From the program::

answer = raw_input("What is the password? ")
while password != answer:
    print "The password is incorrect."

If the user submits a wrong password, the while-loop will be entered.
The program prints "The password is incorrect." then tests whether the
password is still not equal to the answer, prints "The password is
incorrect." again, etcetera. I think you intended to make it so that
the program kept asking for passwords until the right one was given.
This is done with:
answer = raw_input("What is the password? ")
while password != answer:
    print "The password is incorrect."
    answer = raw_input("What is the password? ")

Apart from this, I would like to ask you and anyone else who submits a question:

Do NOT just say there's something wrong with your code, say WHAT is
going wrong. That is, say "if I run this program (with this-and-that
input if that's important), I would expect to get such-and-such, but I
get so-and-so instead."

Andre Engels

On 7/5/05, Nathan Pinno <falcon3166 at hotmail.com> wrote:
>
>
> What's wrong with this code? I'm using 2.2.3 if this helps.
>
> #This is for a password protected program to store passwords.
> password = "hello"
> print "The Password Program"
> print "Copywrite 2005. All Rights Reserved."
> print
> answer = raw_input("What is the password? ")
> while password != answer:
>     print "The password is incorrect."
> def main_menu():
>     print "1) Add a login info card"
>     print "2) Lookup a login info card"
>     print "3) Remove a login info card"
>     print "4) Print Login info list"
>     print "5) Save login list"
>     print "6) Open Login list"
>     print "9) Exit"
>
> def load_login(site,filename):
>     in_file = open(filename,"r")
>     while 1:
>         in_line = in_file.readline()
>         if len(in_file) == 0:
>             break
>         in_line = in_line[:-1]
>         [site,id,passcard] = string.split(in_line,",")
>         list[site] = id and passcard
>     in_file.close()
>
> def save_login(site,filename):
>     out_file = open(filename,"w")
>     for x in site.keys():
>         out_file.write(x+","+sites[x]+"\n")
>     out_file.close()
>
> menu_choice = 0
> list = {}
> print "Welcome to the second half of the program."
> print main_menu()
> while menu_choice != 9:
>     menu_choice = input("Choose an option: ")
>     if menu_choice == 1:
>         print "Add a login info card"
>         site = raw_input("Site: ")
>         id = raw_input("User ID: ")
>         passcard = raw_input("Password: ")
>         list[site] = id and passcard
>     elif menu_choice == 2:
>         print "Lookup a login info card"
>         site = raw_input("Site: ")
>         if site.has_key(site):
>             print "The ID is: ",id(site)
>             print "The password is: ",passcard(site)
>         else:
>             print site," was not found."
>     elif menu_choice == 3:
>         print "Remove a login info card"
>         site = raw_input("Site: ")
>         if sites.has_key(site):
>             del numbers[site]
>         else:
>             print site," was not found."
>     elif menu_choice == 4:
>         print "Login Info"
>         for x in site.keys():
>             print "Site: ",x," \tID: ",numbers[x]," \tPassword: ",numbers[x]
>         print
>     elif menu_choice == 5:
>         filename = raw_input("Filename to save: ")
>         save_login(list,filename)
>     elif menu_choice == 6:
>         filename == raw_input("Filename to load: ")
>         load_login(list,filename)
> print "Have a nice day!"
>
> Thanks,
> Nathan Pinno
> Crew, McDonalds Restaurant, Camrose, AB Canada
> http://www.npinnowebsite.ca/
>
>
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
>
>


More information about the Tutor mailing list