더북(TheBook)
def open_account(): # 계좌 개설 함수
    print("새로운 계좌를 개설합니다.")

open_account() # open_account() 함수 호출

def deposit(balance, money): # 입금 처리 함수
    print("{0}원을 입금했습니다. 잔액은 {1}원입니다.".format(money, balance + money))
    return balance + money # 입금 후 잔액 반환

 

def withdraw(balance, money): # 출금 처리 함수
    if balance >= money: # 잔액이 출금액보다 많으면
        print("{0}원을 출금했습니다. 잔액은 {1}원입니다.".format(money, balance - money))
        return balance - money # 출금 후 잔액 반환
    else:
        print("잔액이 부족합니다. 잔액은 {0}원입니다.".format(balance))
        return balance # 기존 잔액 반환
balance = 0 # 초기 잔액
balance = deposit(balance, 1000) # 1,000원 입금

# 출금
balance = withdraw(balance, 2000) # 2,000원 출금 시도
balance = withdraw(balance, 500) # 500원 출금 시도

실행결과 icon_con

새로운 계좌를 개설합니다.
1000원을 입금했습니다. 잔액은 1000원입니다.
잔액이 부족합니다. 잔액은 1000원입니다.
500원을 출금했습니다. 잔액은 500원입니다.

예제에서는 출금을 2번 시도합니다. 처음 출금을 시도할 때는 2,000원을 전달값으로 넘깁니다. deposit() 함수를 호출한 후이므로 현재 잔액이 1,000원입니다. 잔액이 출금하려는 금액보다 적으므로 출금하는 데 실패합니다. 두 번째 출금 시도에서는 출금액을 500원으로 전달합니다. 이때는 잔액이 더 많아서 정상적으로 출금되고 출금 후 잔액도 반환됩니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.