Python笔记_24_ATM项目

该博客围绕ATM小项目展开,介绍了基本实现,如取钱、转账、改密等操作及相应判断条件。还提及类型判断要求,如姓名、密码、身份证号的格式。进行了需求分析,定义了卡类、用户类等。最后说明在主文件main操作,包含开户、查询等功能,并给出原码下载地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

小项目-ATM

基本实现

取钱 : 卡是否存在,是否冻结,取钱金额是否正确
转账 : 把一个卡里的钱转到其他卡内 (卡是否存在,是否冻结,对方账户是否存在,转账的金额是否正确)
改密 : (1)原密码改密 (2)身份证改密
解卡 : 判断卡号和身份证是否正确在选择解卡
补卡 : 将旧用户的所有信息和新卡绑定(包括名字,余额等所有卡信息和用户信息,数据重新绑定)

类型要判断

姓名不能为空,
密码6位包含字母数字大小写,
身份证号用正则匹配且不能为空,一个身份证号只能注册一次不能重复.
不能给自己转账
等等…

需求分析:

card卡类:
卡号,密码,余额,锁定状态
cardid , password , money , islock

person 用户类:
用户名 身份证号 手机号 卡
name userid phone card

view 视图类
登录, 打印欢迎界面 , 打印操作界面

operation 操作类
把十个功能都在operation里面完成实现

主文件 main 当中进行操作

(1) 开户: register
(2) 查询: query
(3) 存钱: save_money
(4) 取钱: get_money
(5) 转账: trans_money
(6) 改密: change_pwd
(7) 锁卡: lock
(8) 解卡: unlock
(9) 补卡: new_card
(10)退出: save

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述

原码下载

地址:ATM小项目

一、Python运维开发基础课程列表 Python运维开发基础课程列表 第一天 1、编程语言介绍 2、Python基础,介绍历史、发展情况及现状 3、Python安装、环境准备 4、编程风格、语法要求、变量格式等 5、编写用户交互脚本 6、读取用户输入 7、基本流程控制,if..else/for x in…/while True 8、程序流程控制二,break\continue\ 嵌套循环 9、项目实践:编写用户登录认证程序 ※实现用户名密码登陆,输入错误3次后锁定用户,多用户在线 第二天 1、python I/O交互 2、处理文件、通过Python修改及处理文件内容 3、项目实践:编写员工信息查询程序 ※读取员工信息数据库,支持模糊查询,支持动态添加、修改、删除员工信息 4、列表 5、元组、集合 6、字典的概念、语法、使用 7、程序实践 8、项目实践:编写信用卡ATM机程序,自动计息,自动扣款,带对账单功能 ※提供消费购物接口,取款需自动扣除手续费,每月底生成电子对帐单,延迟还款需计 利息 第三天 1、Python模块的介绍与使用 2、常用模块介绍 3、Pickle 序列化(实现内存数据在不同程序间共享) 4、自定制模块 5、异常处理,try….except 6、自定义异常类 7、Python函数概念、语法 8、函数参数 10、函数处理多个参数、默认参数 11、Return 12、正则表达式 13、迭代器和生成器 14、lambda 函数使用 15、装饰器 16、项目实践:编写备份程序,具备常规备份、增量备份、差异备份功能 第四天 1、面向对象编程基础 2、类的基本语法 3、编写类练习小程序 4、类的初始化 5、类下面的函数使用 6、类的调用 7、类的继承 8、项目实践:安红恋爱游戏程序 ※练习使用面向对象的思维设计并编写程序 9、项目实战一、模拟人生游戏 ※设定两个故事场景,场景可以穿插衔接,人物之间有关系和互动并且互相影响,根据 不同用户的玩法实现开放式结局 第五天 1、Socket 介绍 2、Python socket 语法 3、简单的socket 交互程序 4、Socket Server的开发与使用 5、多线程非阻塞并发自处理 6、练习程序:用SOCKET模拟实现SSH客户端功能 6、项目实战二、开发FTP服务器\客户端软件 ※分别开发服务器端和客户端,通过Socket模块实现网络通信,模拟实现FTP主要的文件下载、上传功能、实现多用户并发在线使用。 第六天 1、 项目实战三、开发运维审计服务器,实现公司全网用户操作审计需求 ※开发一个堡垒机,实现用户可以通过WEB 和命令行登录到所有LINUX服务器上,纪录所有用户命令操作 2、项目实战四、通过Python脚本连接MYSQL数据库实现数据自动入库、更新 3、项目实战五、开发C/S架构备份服务器,实现远程备份 ※使用PYTHON SOCKET模块实现文件的远程压缩传输 二、Python中高级课程列表 Python运维开发培训中高级课程列表 第七天 1、项目实战六、编写类Nagios监控软件框架 2、编写监控服务器server 端 3、实现自动监控、自动报警 4、编写监控客户端 5、可监控自定义进程 6、使用Python SNMP模块获取并处理服务器信息 7、使用Paramiko模块管理Linux 服务器 第八天 1、Python 多线程程序开发使用 2、项目实战七、开发实现对上千台服务器的批量管理,分发指令、文件传送的运维管理程序 ※用多线程的方式并发连接登录多台LINUX服务器,实现并发命令操作、文件分发,实时结果返回,并可根据服务器性能控制线程量,千台机器改密码1分钟完成。 3、HTML/JAVAScript基础 4、WEB JS Package BootStrap 介绍与使用 ※通过BootsStrap 样式制作精美清新的WEB页面 5、使用JSON(实现不同程序间内存数据交换) 6、JQuery/Ajax 基础与使用 ※实现页面部分内容与后台交互并实时刷新页面 第九天 1、Python WEB 架构Django的介绍、使用 2、Django manage.py 3、Django 视图 4、Django models使用Mysql数据库 5、Django 模板 6、Django url 7、Django Admin 8、编写前后台动态交互页面 三、企业项目实战(web及运维软件开发) Python运维开发企业项目实战 第十天 企业大项目实战八--开发BBS论坛软件 1、实现多用户同时在线 2、实现发贴、回复、评论功能 3、接入微博、QQ等SNS社交软件登录发帖接
├ │ ├ │ │ ├01 python s14 day1 开课介绍.avi │ │ ├02 python s14 day1 开课介绍2.avi │ │ ├03 python s14 day1 开课介绍3.avi │ │ ├04 python s14 day1 开课介绍4.avi │ │ ├05 python s14 day1 python发展介绍.avi │ │ ├06 python s14 day1 第一个python程序.avi │ │ ├07 python s14 day1 变量.avi │ │ ├08 python s14 day1 字符编码与二进制.avi │ │ ├09 python s14 day1 字符编码的区别与介绍.avi │ │ ├10 python s14 day1 用户交互程序.avi │ │ ├11 python s14 day1 if else流程判断.avi │ │ ├12 python s14 day1 while 循环.avi │ │ ├13 python s14 day1 while 循环优化版本.avi │ │ ├14 python s14 day1 for 循环及作业要求.avi │ │ └day1.zip │ ├ │ │ ├01 python s14 day2 本节鸡汤.avi │ │ ├02 python s14 day2 模块初识.avi │ │ ├03 python s14 day2 模块初识2.avi │ │ ├04 python s14 day2 pyc是什么.avi │ │ ├05 python s14 day2 python数据类型.avi │ │ ├06 python s14 day2 bytes数据类型.avi │ │ ├07 python s14 day2 列表的使用.avi │ │ ├08 python s14 day2 列表的使用2.avi │ │ ├09 python s14 day2 元组与购物车程序练习.avi │ │ ├10 python s14 day2 购物车程序练习实例.avi │ │ ├11 python s14 day2 字符串常用操作.avi │ │ ├12 python s14 day2 字典的使用.avi │ │ ├13 python s14 day2 三级菜单实例.avi │ │ ├14 python s14 day2 本周作业-购物车优化.avi │ │ └s14day2_code.zip │ ├ │ │ ├day3-code.zip │ │ ├oldboy-10.avi │ │ ├oldboy-11.avi │ │ ├oldboy-12.avi │ │ ├oldboy-13.avi │ │ ├oldboy-14.avi │ │ ├oldboy-15.avi │ │ ├oldboy-16.avi │ │ ├oldboy-17.avi │ │ ├oldboy-18.avi │ │ ├oldboy-19.avi │ │ ├oldboy-20.avi │ │ ├oldboy-21.avi │ │ ├oldboy-22.avi │ │ ├oldboy-23.avi │ │ ├oldboy-24.avi │ │ ├oldboy-25.avi │ │ ├oldboy-26.avi │ │ ├oldboy-27.avi │ │ └oldboy-9.avi │ ├ │ │ ├day4.zip │ │ ├oldboy-1.avi │ │ ├oldboy-10.avi │ │ ├oldboy-11.avi │ │ ├oldboy-12.avi │ │ ├oldboy-13.avi │ │ ├oldboy-14.avi │ │ ├oldboy-15.avi │ │ ├oldboy-16.avi │ │ ├oldboy-17.avi │ │ ├oldboy-18.avi │ │ ├oldboy-2.avi │ │ ├oldboy-3.avi │ │ ├oldboy-4.avi │ │ ├oldboy-5.avi │ │ ├oldboy-6.avi │ │ ├oldboy-7.avi │ │ ├oldboy-8.avi │ │ └oldboy-9.avi │ ├ │ │ ├day5.zip │ │ ├oldboy-1.avi │ │ ├oldboy-10.avi │ │ ├oldboy-11.avi │ │ ├oldboy-12.avi │ │ ├oldboy-13.avi │ │ ├oldboy-14.avi │ │ ├oldboy-2.avi │ │ ├oldboy-3.avi │ │ ├oldboy-4.avi │ │ ├oldboy-5.avi │ │ ├oldboy-6.avi │ │ ├oldboy-7.avi │ │ ├oldboy-8.avi │ │ └oldboy-9.avi │ ├ │ │ ├01 本节小鸡汤(电影分享).avi │ │ ├02 面向对象介绍.avi │ │ ├03 面向对象特性介绍.avi │ │ ├04 实例演示opp编程好处.avi │ │ ├05 实例变量与类变量.avi │ │ ├06 类变量的作用及析构函数.avi │ │ ├07 类的继承.avi │ │ ├08 类的继承2.avi │ │ ├09 经典类与新式类的继承顺序.avi │ │ ├10 继承实例讲解.avi │ │ ├11 多态实例讲解.avi │ │ ├12 本节作业之选课系统开发.avi │ │ └day6.zip │ ├ │ │ ├day7.zip │ │ ├oldboy-1.avi │ │ ├oldboy-10.avi │ │ ├oldboy-11.avi │ │ ├oldboy-12.avi │ │ ├oldboy-13.avi │ │ ├oldboy-2.avi │ │ ├oldboy-3.avi │ │ ├oldboy-4.avi │ │ ├oldboy-5.avi │ │ ├oldboy-6.avi │ │ ├oldboy-7.avi │ │ ├oldboy-8.avi │ │ └oldboy-9.avi │ ├ │ │ ├day8.zip │ │ ├oldboy-01.avi │ │ ├oldboy-02.avi │ │ ├oldboy-03.avi │ │ ├oldboy-04.avi │ │ ├oldboy-05.avi │ │ ├oldboy-06.avi │ │ ├oldboy-07.avi │ │ ├oldboy-08.avi │ │ ├oldboy-09.avi │ │ ├oldboy-10.avi │ │ └oldboy-11.avi │ ├ │ │ ├day9.zip │ │ ├oldboy-1.avi │ │ ├oldboy-10.avi │ │ ├oldboy-11.avi │ │ ├oldboy-12.avi │ │ ├oldboy-13.avi │ │ ├oldboy-14.avi │ │ ├oldboy-15.avi │ │ ├oldboy-2.avi │ │ ├oldboy-3.avi │ │ ├oldboy-4.avi │ │ ├oldboy-5.avi │ │ ├oldboy-6.avi │ │ ├oldboy-7.avi │ │ ├oldboy-8.avi │ │ └oldboy-9.avi │ ├ │ │ ├day10.zip │ │ ├oldboy-1.avi │ │ ├oldboy-10.avi │ │ ├oldboy-11.avi │ │ ├oldboy-12.avi │ │ ├oldboy-13.avi │ │ ├oldboy-14.avi │ │ ├oldboy-15.avi │ │ ├oldboy-16.avi │ │ ├oldboy-17.avi │ │ ├oldboy-18.avi │ │ ├oldboy-2.avi │ │ ├oldboy-3.avi │ │ ├oldboy-4.avi │ │ ├oldboy-5.avi │ │ ├oldboy-6.avi │ │ ├oldboy-7.avi │ │ ├oldboy-8.avi │ │ └oldboy-9.avi │ ├ │ │ ├01 python s14 day 11 上节作业和读书分享_rec.mp4 │ │ ├02 python s14 day 11 jQuery选择器_rec.mp4 │ │ ├03 python s14 day 11 jQuery选择器eq和nth-child的区别_rec.mp4 │ │ ├04 python s14 day 11 jQuery表单选择器_rec.mp4 │ │ ├05 python s14 day 11 jQuery操作属性、css和返回顶部实例_rec.mp4 │ │ ├06 python s14 day 11 jQuery过滤器、事件和扩展方法_rec.mp4 │ │ ├07 python s14 day 11 jQuery模态对话框和ajax_rec.mp4 │ │ ├08 python s14 day 11 eclipse环境的配置_rec.mp4 │ │ ├09 python s14 day 11 MVC框架和python的WEB框架简介_rec.mp4 │ │ ├10 python s14 day 11 Eclipse django 使用_rec.mp4 │ │ ├11 python s14 day 11 创建Django project and app_rec.mp4 │ │ └12 python s14 day 11 Django用户注册和ajax请求_rec.mp4 │ ├ │ │ ├01 python s14 day 12上节作业_rec.mp4 │ │ ├02 python s14 day 12 Django路由系统_rec.mp4 │ │ ├03 python s14 day 12 Windows下Python-MySQL模块的安装_rec.mp4 │ │ ├04 python s14 day 12 模型字段类型_rec.mp4 │ │ ├05 python s14 day 12 增删改查过滤排序_rec.mp4 │ │ ├06 python s14 day12 模版语言和跨站请求伪造1_rec.mp4 │ │ ├07 python s14 day 12 模版语言和跨站请求伪造2_rec.mp4 │ │ └08 python s14 day 12 模板extend和include_rec.mp4 │ ├ │ │ ├day13.zip │ │ ├oldboy-1.avi │ │ ├oldboy-10.avi │ │ ├oldboy-2.avi │ │ ├oldboy-3.avi │ │ ├oldboy-4.avi │ │ ├oldboy-5.avi │ │ ├oldboy-6.avi │ │ ├oldboy-7.avi │ │ ├oldboy-8.avi │ │ └oldboy-9.avi │ ├ │ │ ├01开课介绍.avi │ │ ├02前端技术概要.avi │ │ ├03今日内容概要.avi │ │ ├04Html本质以及在web程序中的作用(一).avi │ │ ├05Html本质以及在web程序中的作用(二).avi │ │ ├06Html本质以及在web程序中的作用(三).avi │ │ ├07html的head内标签.avi │ │ ├08html的body内标签之图标、换行及其他.avi │ │ ├09chrome查看html样式基本操作.avi │ │ ├10html的body内标签之input系列(一).avi │ │ ├11html的body内标签之input系列(二).avi │ │ ├12html的body内标签之多行文本及下来框.avi │ │ ├13html的body内标签之超链接.avi │ │ ├14html的body内标签之图片及表格.avi │ │ ├15html的body内标签之表格.avi │ │ ├16html的body内标签之fieldset标签和label标签.avi │ │ ├17上述内容总结.avi │ │ ├18css选择器.avi │ │ ├19css的存在形式及优先级.avi │ │ ├20css边框以及其他常用样式.avi │ │ ├21css之float样式.avi │ │ ├22css之float实现作业实例.avi │ │ ├23css之display样式.avi │ │ ├24css之内外边距.avi │ │ ├25本周作业以及思路.avi │ │ └day14课上所有.zip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值