里程碑,今天用 python 函數(shù)做出一個(gè)簡(jiǎn)單小應(yīng)用啦!

學(xué)了幾周的 Python,今天參考老師的教程,成功做出一個(gè)簡(jiǎn)單的“銀行存取款系統(tǒng)”,算是一個(gè)小小的里程碑,很有成就感,以下是代碼:


balance = 1000
account_log = []

def valideate(func):
    def wrapper(*args,**kwargs):
        amount = str(args[0])
        index = amount.index(".")
        if len(amount) - index - 1 > 1:
            print("輸入格式有誤,小數(shù)點(diǎn)最多保留兩位")
        else:
             func(*args,**kwargs)
    return wrapper

@valideate
def deposit(amount):
    """
    存款操作
    :param amount:存入金額
    :return:None
    """
    global balance
    balance += amount
    write_log(amount,"存入")

@valideate
def withdrawal(amount):
    """
    取款
    :param amount: 金額
    :return: None
    """
    global balance
    if amount > balance:
        print("余額不足")
    else:
        balance -= amount
    write_log(amount,"取出")

def write_log(amount,type):
    """
    寫(xiě)入日志
    :param amount: 金額
    :param type: 存入或取出
    :return:None
    """
    now = datetime.datetime.now()
    create_time = now.strftime("%Y-%m-%d %M:%H:%S")
    data = [create_time,type,amount,f"{balance:.2f}"]
    account_log.append(data)


def print_log():
    """
    查看流水
    :return:None
    """
    print(account_log)

def show_menu():
    menu = """
操作菜單:
0:退出;
1:存款;
2:取款;
3:查看記錄;
    """
    print(menu)

while True:
    show_menu()
    num = int(input("請(qǐng)根據(jù)菜單編號(hào)輸入:"))
    if num == 0:
        print("你已退出系統(tǒng)")
        break
    elif num == 1:
        print("存款")
        amount = float(input("請(qǐng)輸入存款金額:"))
        deposit(amount)
        print(f"當(dāng)前余額是{balance:.2f}")

    elif num == 2:
        print("取款")
        amount = float(input("請(qǐng)輸入取款金額:"))
        withdrawal(amount)
        print(f"當(dāng)前余額是{balance:.2f}")

    elif num == 3:
        print("查看記錄")
        print_log()
    else:
        print("輸入有誤")

以下是輸出結(jié)果:


圖片.png

輸入相關(guān)數(shù)字,即可查看相應(yīng)結(jié)果。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容