Python模拟实现银行系统(平时的小练习)
class Bankin_system:
login = '''
********************************************
*** ***
*** ***
*** ***
*** 欢 迎 登 录 银 行 系 统 ***
*** ***
*** ***
*** ***
********************************************
'''
mainsting = '''
********************************************
*** ***
*** 1.开户(1) 2.查询(2) ***
*** 3.取款(3) 4.存款(4) ***
*** 5.转账(5) ***
*** 退出(Q) ***
*** ***
*** ***
********************************************
'''
# 定义一个字典用于存用户的信息
user = {"张三": 12345, "李四": 12345, "1": 1}
# 定义一个money字典用于存用户的余额
money = {"张三": 1000, "李四": 5000, "1": 10000}
# 定义构造函数
def __init__(self):
# 打印登录界面,在构造器中输入账号密码
print(self.login)
self.loginAct = input("请输入管理员账号:")
self.password = eval(input("请输入密码:"))
if self.user.get(self.loginAct) == self.password:
print("操作成功请稍等....")
self.main()
# 定义一个主函数调用其他函数
def main(self):
print(self.mainsting)
num = eval(input("请输入操作选项:"))
if isinstance(num, int):
if num == 1:
self.open_account()
elif num == 2:
self.query()
elif num == 3:
self.qu_money()
elif num == 4:
self.cun_money()
elif num == 5:
self.transfer_accounts()
else:
print("FBI WARRING 请重新输入合法操作")
self.main()
elif isinstance(num, str):
if num == "Q":
print("感谢您的使用!!")
return
else:
print("FBI WARRING 请重新输入合法操作")
self.main()
# 开户功能
def open_account(self):
loginAct = input("请输入您的用户名(中文):")
password = eval(input("请设置您的密码:"))
# 先判断一下,是否已存在
if self.user.get(loginAct) is None:
# 添加到userbiao中,
password1 = eval(input("请再次输入您的密码:"))
if password == password1:
self.user[loginAct] = password
print("开户成功")
self.main()
else:
print("两次密码不相同")
self.open_account()
else:
print("该用户已存在,请换个用户名!!")
self.open_account()
# 查询
def query(self):
print(f"{self.loginAct}的余额为:{self.money.get(self.loginAct)}")
self.main()
# 查询
def query_money(self):
return self.money.get(self.loginAct)
# 取钱
def qu_money(self):
how_money = eval(input("请输入取款金额:"))
# 先判断金额
if self.money.get(self.loginAct) >= how_money:
how_money = self.money.get(self.loginAct) - how_money
# 取钱之后将账户中的值重新设置一下
self.money[self.loginAct] = how_money
# 并输出账户的余额
self.query()
self.main()
else:
print("您的账户余额不足!!")
print(f"账户余额为{self.query()},请重新操作!!")
self.main()
# 存钱
def cun_money(self):
how_money = eval(input("请输入存款金额:"))
new_money = self.money.get(self.loginAct) + how_money
# 存钱之后将账户中的值重新设置一下
self.money[self.loginAct] = new_money
# 并输出账户的余额
self.query()
self.main()
# 转账
def transfer_accounts(self):
how_money = eval(input("请输入转账金额:"))
# 转账的时候先判断一下账户余额,没有就不能转账
if self.money.get(self.loginAct) >= how_money:
user = input("请输入转账用户的账户名:")
# 自己的账户中的钱减少
new_money = self.money.get(self.loginAct) - how_money
# 取钱之后将账户中的值重新设置一下
self.money[self.loginAct] = new_money
# 转账用户的钱增加
new_money = self.money.get(user) + how_money
# 存钱之后将账户中的值重新设置一下
self.money[user] = new_money
# 并输出账户的余额
self.query()
self.main()
else:
print("您的账户余额不足!!")
print(f"账户余额为{self.query_money()},请重新操作!!")
self.main()
if __name__ == '__main__':
bank = Bankin_system()
__EOF__

本文作者:尼古拉斯_帅气
本文链接:https://www.cnblogs.com/yfs1024/p/16253228.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/yfs1024/p/16253228.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)