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 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   yfs1024  阅读(193)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示