Bank_Teller_Project_Review

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))