user
class User:
"""
用户类
"""
def __int__(self,name,id,phone,card):
"""
构造方法
:param name:用户名
:param id: 身份证
:param phone: 电话
:param card: 银行卡(对象)
"""
self.name = name
self.id = id
self.phone = phone
self.card = card
card
class Card:
"""
银行卡类
"""
def __init__(self,card_num,pwd,money):
"""
银行卡构造方法
:param card_num:卡号
:param pwd: 密码
:param money: 余额
"""
self.card_num = card_num
self.pwd = pwd
self.money = money
# 解锁属性,默认其为:未锁定
self.cardLock = False
bank_ui
class BankUI:
"""
界面辅助类
"""
# 模拟数据的管理员登录信息,只有登录后才可以进行银行卡的相关操作
# 管理员用户名
admin_username = "admin"
# 密码
admin_password = "123"
def print_welcome_ui(self):
"""
打印欢迎界面
:return:
"""
print("*" * 45)
print("**** ****")
print("**** 欢迎登陆银行管理系统 ****")
print("**** ****")
print("*" * 45)
def print_sys_menu(self):
"""
打印系统菜单
:return:
"""
print("*" * 45)
print("**** ****")
print("**** 1.开户(1) 2.查询(2) ****")
print("**** 3.取款(3) 4.存款(4) ****")
print("**** 5.转账(5) 6.锁定(6) ****")
print("**** 7.解锁(7) ****")
print("**** ****")
print("**** 退出系统(Q) ****")
print("**** ****")
print("*" * 45)
def admin_verify(self):
"""
验证管理员身份,验证通过方可继续操作
:return:
"""
username = input("请输入用户名:")
if username !=BankUI.admin_password:
print("密码错误!")
return -1
# 通过验证
print("操作成功!请稍后···")
atm【待添加】
bank
import time
from atm import ATM
from bank_ui import BankUI
class HomePage
"""
组装功能,执行银行系统
"""
def __init__(self):
"""
初始化功能,实现模拟数据库字典,初始化ATM和UI
"""
self.alluser={}
self.atm = ATM(self.alluser)
self.bank_ui = BankUI()
def saveUser(self):
"""
模拟数据存盘
:return:
"""
self.alluser.update(self.atm.alluser)
print("数据存盘成功!")
def main(self):
"""
系统入口
:return:
"""
# 打印欢迎页面
self.bank_ui.print_welcome_ui()
# 管理员登录,并选择功能进行操作
result = self.bank_ui.admin_verify()
if not result:
while True:
# 打印菜单
self.bank_ui.print_sys_menu()
option = input("请选择功能:")
# 判断是否非法
if option not in ('1','2','3','4','5','6','7','Q','q'):
print("输入有误!")
#暂停一秒
time.sleep(1)
if option == "1":
self.atm.create_user()
elif option == "2":
self.atm.searh_user()
elif option == "3":
self.atm.get_money()
elif option == "4":
self.atm.save_money()
elif option == "5":
self.atm.tranfer_money()
elif option == "6":
self.atm.lock_card()
elif option == "7":
self.atm.unlock card()
elif option.upper() == "Q":
# 验证身份,方可退出系统,进行模拟存盘
if not self.bank_ui.admin_verify():
self.saveUser()
print("正在退出系统···")
return -1
# 编写测试
if __name__== "__main__":
homepage = HomePage()
homepage.main()