Jul-23-2017, 04:53 PM
d1 = 0 d2 = 0 d3 = 0 y1 = 0 w1 = 0 pin = 0 class Bank_Account: def pincheck(self, pin): if pin in data: data[pin] return True else: return False print("WRONG PIN") # constructor or initializer def __init__(self, name, money, pin1): self.__name = name self.__balance = money # __balance is private now, so it is only accessible inside the class self.__pin = pin1 def deposit(self, money): self.__balance += money def withdraw(self, money): if self.__balance > money : self.__balance -= money return money else: return "Insufficient funds" def checkbalance(self): return self.__balance def next_step(): while True: y2 = int(input("Enter 1 if you want to make a withdrawal, enter 2 if you don't")) if y2 == 1: enter_pin() else: print("ERROR, TRY AGAIN") Bone = Bank_Account('Obi Ezeakachi', 5000, 1111) Btwo = Bank_Account('Tasha St.Patrick', 80000 , 2222) Bthree = Bank_Account('Tommy Egan', 7000, 3333) data = {'1111': Bone , '2222' : Btwo , '3333' : Bthree } data = {int(pin):value for key, value in data.items()} def enter_pin(): while True: pin = int( input("Enter pin "))# keeps asking for the correct pin if pin in data: data[pin] return True else: print("INCORRECT PIN TRY AGAIN") account = enter_pin() #if Bone.pincheck(pin): print(" ",account.checkbalance()) y1 = int(input("Enter 1 if you for a withdrawal, enter 2 if you don't")) if y1 == 1: w1 = input("How much do you want withdraw") int(w1) print("Withdrawal: £",account.withdraw(w1)) print("Current Balance:",account.checkbalance()) next_step() else: d1 = int(input("How much do you want to deposit")) account.deposit(d1) print("Current Balance:",account.checkbalance()) next_step()This is the changes I've implemented but i'm still getting the same issue as before