Python


ATM

<h1><center> ATM系统项目说明文档</center></h1> <p>运用Python基础知识,来模拟出银行系统。 要求:使用面对对象编程来完成项目开发</p> <h2>ATM系统的主要功能:</h2> <ol> <li>注册 :用户名,手机号,身份证(18位),密码(两次确认,长度6位)</li> <li>查询 : 账号必须存在,密码(三次机会,不对锁卡)</li> <li>取款 :账号必须存在,密码(三次机会,不对锁卡),取款金额不能大于存款</li> <li>存款 :账号必须存在,存款金额不能对于0</li> <li>转账 :你的账户,转账账户都必须存在,密码(三次机会,不对就锁卡),转账金额不能大于存款</li> <li>锁卡 :账号必须存在,可以使用密码冻结,还可以使用身份证号冻结</li> <li>解卡 :账号必须存在,只能使用身份证号进行解锁</li> <li>补卡 :使用身份证进行补卡,每个身份证只能有一张卡,之前的卡作废</li> <li>改密 :原密码进行改密,也可以使用身份证进行改密</li> <li>退出 :(保持)</li> </ol> <h2>项目分析</h2> <p>根据要求进行分析,思考如何对项目进行设计和架构</p> <h3>问题一 :如何使用面对对象编程思想来完成?</h3> <h3>问题二 :当前的项目功能和项目演示中,大家看到几个对象?</h3> <h3>银行卡对象 :Card 存储银行卡信息</h3> <p>卡号 :cardid 密码 :passwrod 余额 :money 锁卡 :islock</p> <h3>用户对象 :Person 存储用户信息</h3> <p>用户名 :name 身份证号 :userid 手机号 :phone 卡 :card 银行卡对象</p> <h3>操作器对象 :Controller 具体的操作控制类</h3> <ol> <li>注册 :regiser</li> <li>查询 :query</li> <li>取款 :get_money</li> <li>存款 :add_money</li> <li>转账 :save_money</li> <li>锁卡 :lock</li> <li>解卡 :unlock</li> <li>补卡 :new_card</li> <li>改密 :change_pwd</li> <li>退出 :save</li> </ol> <h3>视图对象 :Views,显示操作界面</h3> <p>欢迎界面,操作界面</p> <h3>思考如何存储数据?</h3> <p>使用文件进行存储 卡号 :用户==user——dict == user.text 身份证 :卡号 == user——id_dict == userid.text</p> <h3>开发周期</h3> <p>花4小时左右的时间,去分析这个项目 花6小时左右的时间,去完成和实现项目</p> <h3>扩张功能</h3> <p>给当前ATM增加一个 交易记录 的功能 像存折一样,对每次的金额变动进行记录</p> <p>记录的格式: [2021/12/15 12:12:12] 存款200元,余额300元 [2021/12/15 12:12:13] 取款200元,余额100元</p> <h3>目录说明</h3> <p>main.py = 主程序文件 Packages = 创建文件包,模块</p> <ol> <li><strong>init</strong>.py</li> <li>CardClass.py = 银行卡类</li> <li>ControllerClass.py = 操作类</li> <li>PersonClass.py = 用户类</li> <li>ViewClass.py = 视图类 Databases = 存放数据</li> <li>user.text = 用户信息</li> <li>userid.text = 银行卡信息</li> </ol> <h3>列表树状图</h3> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitfile/sign/d2f7beb699753a7329f9937bcfe4183c" alt="" /></p>

页面列表

ITEM_HTML