import datetime
balance =
1000
account_log =
defvalidate
(func)
:"""
裝飾器,用於檢查使用者輸入的合法性驗證
:param func: 被裝飾的函式
:return:
"""def(
*args,
**kwargs)
: amount=args[0]
iflen
(str
(amount))-
str(amount)
.index(
".")-1
>2:
print
("輸入格式有誤,請輸入兩位小數!"
)else
: func(
*args,
**kwargs)
@validate
defdeposit
(amount)
:"""
存款函式
:param amount: 存入金額
:return: none
"""global balance
balance += amount
write_log(amount,
"存入"
)@validate
defwithdrawal
(amount)
:"""
取款函式
:param amount: 取出金額
:return: none
"""global balance
if amount > balance:
print
(f"取款失敗!餘額不足"
)else
: balance -=amount
write_log(amount,
"取出"
)def
write_log
(amount,
type):
""" 寫入日誌函式,格式為["create_time","type","amount","balance"]
:param amount: 金額
:param type: 操作型別
:return: none
"""now = datetime.datetime.now(
) create_time = now.strftime(
"%y-%m-%d %h:%m:%s"
)[create_time,
type
,amount,f""])
defprint_log()
:"""
檢視日誌函式
:return: none
"""print
(account_log)
defshow_menu()
:"""
顯示選單函式
:return: none
"""menu =
"""操作選單:
0:退出
1:存錢
2:取錢
3:檢視交易日誌
"""print
(menu)
while
(true):
show_menu(
) num=
int(
input
("請輸入所要操作的選單編號:"))
if num ==0:
#退出print
("你已成功退出!"
)break
elif num ==1:
#存錢 amount =
float
(input
("請輸入存入的金額:"))
deposit(amount)
print
(f"當前的餘額是:"
)elif num ==2:
#取錢 amount =
float
(input
("請輸入取出的金額:"))
withdrawal(amount)
print
(f"當前的餘額是:"
)elif num ==3:
#檢視交易日誌
print_log(
)else
:print
("輸入選單編碼有誤,請重新輸入!"
)
python銀行系統 python 銀行系統
print 開卡成功您的卡號是 s card id def search account self 搜尋功能 利用鍵值卡號 搜尋到對應的使用者 sch card input 請輸入要查詢的卡號 if not self.all users.get sch card 判斷卡號是否存在 print 輸入的...
python銀行排隊系統 在Python中排隊
本文主要向您介紹python語言的queue,並通過特定內容向您展示,希望可以幫助您學習python語言.什麼是佇列?佇列就像水管python中怎麼匯入queue,先入先出,對應於堆疊,後進先出.該佇列是執行緒安全的,並且該佇列具有自己的機制 僅乙個執行緒同時在該佇列上執行.儲存資料,獲取資料 1i...
ATM銀行系統
以前做的課程設計做個備份。include include include includestruct acc struct acc head,tail,p1 int denglu void zhuce void caidan1 void caidan2 void cunkuan void qukua...