大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本文实例讲述了Python实现的银行系统模拟程序。分享给大家供大家参考,具体如下:
成都创新互联总部坐落于成都市区,致力网站建设服务有网站建设、网站设计、网络营销策划、网页设计、网站维护、公众号搭建、微信小程序、软件开发等为企业提供一整套的信息化建设解决方案。创造真正意义上的网站建设,为互联网品牌在互动行销领域创造价值而不懈努力!银行系统模拟程序
1、概述
使用面向对象思想模拟一个简单的银行系统,具备的功能:管理员登录/注销、用户开户、登录、找回密码、挂失、改密、查询、存取款、转账等功能。
编程语言:python。
2、目的
通过这个编程练习,可以熟悉运用面向对象的思想来解决实际问题,其中用到的知识点有类的封装、正则表达式、模块等。
3、体会
在编写这个程序时,实际上的业务逻辑还是要考虑的,比如修改密码时需要输入手机号、身份证号等。在进行类的封装时,实际上还是用面向过程的思想把一些基本的业务逻辑编写成函数,对一些重复使用的代码也可以封装成函数(就是自己造适合这个业务的轮子,实际开发中很多底层的函数是不用自己再次去实现的,可以直接调用),这些都是一些底层的封装,然后在实现主要业务时上就可以调用类中的方法实现,这时只需关注业务逻辑就好了。
使用面向对象的思想进行编程,考虑的点是:实现一个功能,有哪些方法可以让我进行调用(指挥者)。
使用面向过程的思想进行编程,考虑的点是:实现一个功能,我需要实现哪些方法(执行者)。
编写这个程序还用到一个很重要的概念,就是对程序进行模块化。模块化的好处是可以更好的对程序进行维护,条理也更清晰。
4、代码
源码Github地址:https://github.com/liangdongchang/pyBankSystem.git
1、bankSystem.py文件
from view import View from atm import ATM from person import Person def func(view,atm,per): view.funcInterface() choice = input("请选择您要办理的业务:") if choice == '1': return per.checkMoney(atm) elif choice == '2': return per.saveMoney(atm) elif choice == '3': return per.getMoney(atm) elif choice == '4': return per.transferMoney(atm) elif choice == '5': return per.changePassword(atm) elif choice == '6': return per.unlockAccount(atm) elif choice == '7': return per.closeAccount(atm) elif choice == 'T': if per.exit(atm): return True else: print("输入有误!") def main(): # 管理员登录名为'admin',密码为'123' view = View("admin",'123') view.initface() atm = ATM() view.login() per = Person() while True: view.funcInit() choice = input("请选择您要办理的业务:") if choice == '1': per.newAccount(atm) elif choice == '2': if per.login(atm): while True: if func(view,atm,per) == None: continue else: break elif choice == '3': per.findBackPassword(atm) elif choice == '4': per.lockAccount(atm) elif choice == 'T': if per.exit(atm): # 管理员注销系统 if view.logout(): return True else: print("输入有误!") if __name__ == '__main__': main()