Hi Everyone,
I just finished the Bank_Teller project and would like to know if there is anything I could change in my program to make it more efficient? I am just starting off with python, and I want to develop my skills so I can come to the same output with fewer lines.
#Initial Account Balances
checking_balance, savings_balance = 0, 0
#Function to Check Account Balances
def check_balance(account_type, checking_balance, savings_balance):
if account_type == 'savings':
balance = savings_balance
elif account_type == 'checking':
balance = checking_balance
else:
print("Unsuccessful, please enter \"checking\" or \"savings\"")
balance_statement = 'Your ' + account_type + ' balance is ' + str(balance) + '.\n'
return balance_statement
#print(check_balance(‘checking’, checking_balance, savings_balance))
#print(check_balance(‘savings’, checking_balance, savings_balance))
#Function to Make Account Deposit
def make_deposit(account_type, amount, checking_balance, savings_balance):
deposit_satus = ''
if amount > 0:
if account_type == 'checking':
checking_balance += amount
deposit_status = 'Successful'
elif account_type == 'savings':
savings_balance += amount
deposit_status = 'Successful'
else:
deposit_status = "Unsuccessful, please enter \"checking\" or \"savings\""
else:
deposit_status = "unsuccessful, please enter an amount greater than 0"
deposit_statement = 'Deposit of ' + str(amount) + ' to your ' + account_type + ' account was ' + deposit_status.lower()
print(deposit_statement)
return checking_balance, savings_balance
#Function to Make Account Withdrawal
def make_withdrawal(account_type, amount, checking_balance, savings_balance):
withdrawal_status = ''
fail = "unsuccessful, please enter amount less than balance"
if account_type == 'checking':
if amount <= checking_balance:
checking_balance -= amount
withdrawal_status = 'successful'
else:
withdrawal_status = fail
elif account_type == 'savings':
if amount <= savings_balance:
savings_balance -= amount
withdrawal_status = 'successful'
else:
withdrawal_status = fail
else:
print("unsuccessful, please enter \"checking\" or \"savings\"")
withdrawal_statement = 'Withdrawal of ' + str(amount) + ' from your ' + account_type + ' account was ' + withdrawal_status
print(withdrawal_statement)
return checking_balance, savings_balance
#Function to Make Account Transfer
def acc_transfer(acc_from, acc_to, amount, checking_balance, savings_balance):
transaction_status = ''
trans_error = "unsuccessful, please enter amount less than "
if acc_from == 'savings':
if amount <= savings_balance:
savings_balance -= amount
checking_balance += amount
transaction_status = 'successful'
else:
transaction_status = trans_error + str(savings_balance)
elif acc_from == 'checking':
if amount <= checking_balance:
checking_balance -= amount
savings_balance += amount
transaction_status = 'successful'
else:
transaction_status = trans_error + str(checking_balance)
else:
transaction_status = "unsuccessful, please enter \"checking\" or \"savings\""
transaction_statement = 'Transfer of ' + str(amount) + ' from your ' + acc_from + ' to your '+ acc_to + ' account was ' + transaction_status + '.\n'
print(transaction_statement)
return checking_balance, savings_balance
#TESTING DEPOSIT FUNCTION
checking_balance,savings_balance = make_deposit(‘savings’, 10, checking_balance, savings_balance)
#print(check_balance(‘savings’, checking_balance, savings_balance))
checking_balance, savings_balance = make_deposit(‘checking’, 200, checking_balance, savings_balance)
#print(check_balance(‘checking’, checking_balance, savings_balance))
#TESTING WITHDRAWAL FUNCTION
checking_balance, savings_balance = make_withdrawal(‘savings’, 11, checking_balance, savings_balance)
#print(check_balance(‘savings’, checking_balance, savings_balance))
checking_balance,savings_balance = make_withdrawal(‘checking’, 170, checking_balance, savings_balance)
#print(check_balance(‘checking’, checking_balance, savings_balance))
#TESTING ACC TRANSFER FUNCTION
checking_balance, savings_balance = acc_transfer(‘checking’, ‘savings’, 25, checking_balance, savings_balance)
#print(check_balance(‘checking’,checking_balance, savings_balance))
checking_balance, savings_balance = acc_transfer(‘savings’,‘checking’, 40, checking_balance, savings_balance)
#print(check_balance(‘savings’,checking_balance,savings_balance))
checking_balance, savings_balance = acc_transfer(‘savings’,‘checking’, 5, checking_balance, savings_balance)
#print(check_balance(‘checking’,checking_balance,savings_balance))
checking_balance, savings_balance = acc_transfer(‘checking’,‘savings’, 9, checking_balance, savings_balance)
#print(check_balance(‘savings’,checking_balance,savings_balance))