Bank App
Banking ATM application
[code]
from datetime import datetime as dt
class Bank: def __init__(self,ballance=0,filename="bank.txt"): self.ballance=ballance self.filename=filename with open(self.filename,'w') as output: output.writelines('Date\t\t\t\t\t\tAction\t\tAmount\tBallance\n\n') def deposit(self): try: amount = int(input('Deposit ammount:\t')) except ValueError: print('Invalid Entry') else: self.ballance += amount print(f'new ballance:\t{self.ballance}') self.log('Deposit\t',amount)
def withdraw(self,): try: amount = int(input('Withdrawal ammount:\t')) except ValueError: print('Invalid Entry') else: if self.ballance - amount < 0: print('Insuficent funds') else: self.ballance -= amount self.log('Withdraw',amount)
def log(self,action, amount): timestamp = dt.now().strftime('%c') with open(self.filename, 'a')as output: output.writelines(f'{timestamp}\t{action}\t{amount}\t\t{self.ballance}\n')
def run(self): while True: print('Select Option') print(f'Ballance:\t{self.ballance}') action = input('D: Deposit W: Withdraw Q:Quit\t').lower()[0] if action == 'd': self.deposit() elif action == 'w': self.withdraw() elif action == 'q': return else: print('Invalid Request') def main(): account=Bank() try: account.run() except KeyboardInterrupt: pass
if __name__ == ('__main__'): main()
[/code]