编程语言应用

首页 » 常识 » 预防 » Python编程阶段项目ATM学习猿地
TUhjnbcbe - 2023/2/28 18:32:00

###ATM系统项目说明文档

运用基础阶段所学习的python的知识,来模拟出银行的ATM系统。

要求:使用面向对象编程来完成这个项目

##ATM系统的主要功能:

1.注册:用户名,手机号,身份证号(18位),密码(两次确认,长度6位)

2.查询:账号必须存在,密码(三次机会,不对就锁卡)

3.取款:账号必须存在,密码(三次机会,不对就锁卡),取款金额不能大于存款

4.存款:账号必须存在,存款金额不能低于0

5.转帐:你的账户,转款账户都必须存在,密码(三次机会,不对就锁卡),转账金额不能超过余额

6.锁卡:账号必须存在,可以使用密码冻结,还可以使用身份证号冻结

7.解卡:账号必须存在,只能使用身份证号进行解锁

8.补卡:使用身份证进行补卡,每个身份证只能有一张卡,之前的卡作废

9.改密:愿密码进行改密,也可以使用身份证进行改密

10.退出:保存数据

##项目分析

根据需求进行分析,思考如何对项目进行设计和架构

###思考问题一:如果使用面向对象编程思想来完成

当前的项目功能和项目演示中,大家看到了几个对象?

####银行卡对象:Card存储银行卡信息

+卡号。cardid

+密码password

+余额。money

+是否锁卡。islock

####用户对象:Person存储用户信息

+用户名。name

+身份证号.userid

+手机号.phone

+卡.card.银行卡对象

####控制器对象:Controller具体的操作控制类

控制器对象中主要就是去实现ATM这个系统中的操作

在上面定义的那十个方法

1.注册:regiser

2.查询:query

3.取款:get_money

4.存款:add_money

5.转帐:save_money

6.锁卡:lock

7.解卡:unlock

8.补卡:new_card

9.改密:change_pwd

10.退出:save

####视图对象:Views。显示操作界面的

欢迎界面,操作界面

###思考问题二:如何存储数据?

肯定是用文件进行存储。

卡号:用户==user_dict==user.txt

身份证:卡号==user_id_dict==userid.txt

###开发周期

花4个小时左右的时间,去分析这个项目,可以先动手尝试一部分

花4-10个小时左右,可以去完成和实现这个项目

###扩展功能

给当前ATM增加一个交易记录的功能

就像存折一样,每次对金额的变动都需要记录下来

每个银行卡都有自己的交易记录

记录的格式:

[/12/:12:12]存款元,余额元。

[/12/:13:13]转账向用户:张三,卡号:转账元,余额元。

掌握学习方法,不如会弯道超车!

学习猿地:成就自己的只需一套精品!

1
查看完整版本: Python编程阶段项目ATM学习猿地