1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 | import pickle accounts=dict() class Account: """SImple bank account """ def __init__(self,name,balance): self.name=name self.balance=balance def getname(self): return self.name def deposit(self,amount): if amount>0: self.balance+=amount def withdraw(self,amount): try: assert (amount>0) except: print("NO negative amount could be withdrawn") try: assert (balance-amount>0) except : print("maximum balance that could be withdrawn =",balance) balance-=amount def showbalance(self): print("*"*80,"\n\t\tCurrent Balance->",self.balance,"\b\n","*"*79) return self.balance def getbalance(self): return self.balance def new(): while True: name='' print("\n1.to Add an Account \n2.Deposit\n3.Withdraw\n4.View Balance\n5.View All Accounts Currenty Available \n6.Exit \n S or s to save ") choice=input() if choice=='1': name=input("Enter name->") temp=Account(name,0.0) accounts[name]=temp elif choice=='2': if name=='': name=input("Enter Name:->") if name in accounts.keys(): print("how much to add") amount=float(input()) if name in accounts: temp=accounts[name] temp.deposit(amount) else: print('Error Account Do not exist ') elif choice=='3': if name=='': name=input("Enter Name:->") if name in accounts.keys(): print("how much to Withdraw") amount=float(input()) if name in accounts: temp=accounts[name] temp.withdraw(amount) else: print('Error Account Do not exist ') elif choice=='4': if name=='': name=input("Enter Name:->") if name in accounts: temp=accounts[name] temp.showbalance() else : print('Error Account Do not exist ') elif choice=='6': break elif choice=='121': print(accounts) elif choice=='5': print('*'*120) print('\n\tName\t\t\t\t\tBalance') for key in accounts.keys(): print('-' * 80) print('\t',key,'\t\t\t\t\t',accounts[key].getbalance()) print('-' * 80) print('*' * 120) elif choice=='s' or 'S': pic_file = open('account_dump', 'ab') key_file = open('keydump', 'wb') pickle.dump(accounts, key_file) key_file.close() for key in accounts.keys(): temp = accounts[key] print("temp being dumped", temp) temp.showbalance() pickle.dump(temp, pic_file, protocol=pickle.HIGHEST_PROTOCOL) pickle.dump(temp.balance, pic_file, protocol=pickle.HIGHEST_PROTOCOL) pic_file.close() else : print ('Please give correct input ') pass def load(): try:
temp=open('keydump','rb')
temp2=open('account_dump','rb')
except Exception:
print("NO previous record found . Start a new banking ")
menu() details=pickle.load(temp2) key_details=pickle.load(temp) print('printing Key details') print(key_details) for i in (key_details): details = pickle.load(temp2) print("----1----",details.getbalance()) accounts[i]=details details = pickle.load(temp2) print("----2----", details.getbalance()) print('printing acc details') print(accounts) print('loading complete') temp2.close() temp.close() new() def menu(): choice=input('1.NEW Banking ---RESTART\n2.Load->') if choice=='1': new() if choice=='2': load() if choice=='q' or choice=='Q': exit() menu() if __name__=="__main__": menu() |
QWERTY QWERTY / ˈ k w ɜr t i / is the most common modern-day keyboard layout . The name comes from the first six keys appearing on the top left letter row of the keyboard and read from left to right: Q-W-E-R-T-Y. The QWERTY design is based on a layout created for the Sholes and Glidden typewriter and sold to Remington in 1873. It became popular with the success of the Remington No. 2 of 1878, and remains in use on electronic keyboards due to the network effect of a standard layout and a belief that alternatives fail to provide very significant advantages. [ 1 ] The use and adoption of the QWERTY keyboard is often viewed as one of the most important case studies in open standards because of the widespread, collective adoption and use of the product. [ 2 ] History and purposes [ edit ] Keys are arranged on diagonal columns, to give space for the levers. Main article: Sh...
Comments
Post a Comment
share your thoughts ....