Example 7.1
#!/usr/bin/env python#Encoding:utf-8Importipdbdb={}defNewUser (): Prompt='Login Desierd:' whileTrue:name=raw_input (Prompt)ifNameinchdb:prompt='name Taken, try another:' Continue Else: Breakpwd= Raw_input ('passwd:') Db[name]=pwddefOlduser (): Name= Raw_input ('Login:') PWD= Raw_input ('passwd:') passwd=db.get (name)ifpasswd = =pwd:Print 'Welcome back', nameElse: Print 'Login Incorrect'defShowMenu (): Prompt="""(N) EW user login (E) xisting user Login (Q) uit Enter choice:""" Done=False while notDone:chosen=False while notChosen:Try: Choice=raw_input (Prompt). Strip () [0].lower ()except(Eoferror, Keyboardinterrupt): Choice='Q' Print '\nyou picked: [%s]'%ChoiceifChoice not inch 'NEQ': Print 'invalid option, try again' Else: Chosen=TrueifChoice = ='Q': Done=TrueifChoice = ='N': NewUser ()ifChoice = ='e': Olduser ()if __name__=="__main__": ShowMenu ()
Core Programming Answers (chapter seventh)