示例:

'''By challen自动存取款机管理系统登陆login user1.查询余额2.存款操作4.取款操作5.退出用户
'''
#三个用户的账号信息作为数据源,用户信息包含:密码,姓名,余额,用户等级
bank_database= [{'id':'1001','user_password':'200101','name': 'zhanggoudan', 'bank_balance': 1002, 'user_grade': 'VIP用户'},{'id':'1002','user_password':'200202','name': 'liyu', 'bank_balance': 3058, 'user_grade': '白金用户'},{'id':'1003','user_password':'200303','name': 'goerzi', 'bank_balance': 2994, 'user_grade': '黄金用户'}
]#1.登陆检查功能,定义验证id账号密码匹配函数
def login_user_check():'''验证登录密码匹配的函数'''global bank_databaseuser_id=input('请输入您的卡片账号')user_password=input('请输入您的6位密码:')for NewUser in range (len (bank_database)):#遍历判断密码是否与表内一个用户密码进行匹配if user_id== bank_database[NewUser]['id'] and user_password == bank_database[NewUser]['user_password']:print('尊贵的{} {},您已登录成功!请进行下列操作'.format(bank_database[NewUser]['user_grade'],bank_database[NewUser]['name']))print ('——' * 33)return NewUserelse:#错误重新输入print('输入的账号密码有误,请重新输入')break#2.查询余额功能
def check_balance():"""查询余额功能"""global bank_databaseprint('您的账户余额还有{}元'.format(bank_database[NewUser]['bank_balance']))#3.存款功能
def add_balance():'''存款功能'''global bank_databaseadd_money=int(input('请输入存款金额:'))#对用户的余额进行添加bank_database[NewUser]['bank_balance']+=add_moneyprint('尊贵的用户,您的专属账户已成功存入{},目前余额为{}'.format(add_money,bank_database[NewUser]['bank_balance']))#4.取款功能
def draw_balance():"""取款功能"""global bank_databasedraw_money= int (input ('请输入取款金额:'))#判断余额与金额的大小,判定是否可以取出if bank_database[NewUser]['bank_balance']>=draw_money:bank_database[NewUser]['bank_balance']-=draw_moneyprint ('您已成功取款{},目前余额剩余{}'.format (draw_money, bank_database[NewUser]['bank_balance']))if bank_database[NewUser]['bank_balance'] < draw_money:print('您的余额不足!')#5.退出系统
def loginOut():user_choose=input('请问是否登出,是请按1,否请按2,请输入:')while user_choose=='1':print('已成功登出,请取回你的卡片')breakelse:print('请继续操作系统')#定义一个欢迎界面函数
def welcome_user():print ("===================================================================")print ("                       欢迎登陆深圳中通银行                          ")print ("===================================================================")#定义一个用户界面函数
def user_interface():'''用户界面的函数'''print ("{0:1}{1:<30}{2:>30}{0:1}".format ("|", "1.查询账户", "2.存款"))print('\n')print ("{0:1}{1:<30}{2:>30}{0:1}".format ("|", "3.取款", "4.退出账户"))print ("=" * 67)#用户交互界面
while True:#欢迎界面welcome_user()#用户登陆界面并全局引入NewUserNewUser=login_user_check()#检查是否账号密码无误,再进行登陆后续操作if NewUser is None:continuewhile True:user_interface()user_key=input('请输入业务操作')if user_key=='1':check_balance()elif user_key=='2':add_balance()elif user_key=='3':draw_balance()elif user_key=='4':loginOut()break

python教你模拟实现ATM银行自动存取款机相关推荐

  1. Python简单实现ATM自动存取款机

    # ATM后台数据库 id cipher name money  ATMDataBase = [     {'id':'001','cipher':'123456','name':'张三','mone ...

  2. Python练习 简单自动存取款机

    Python练习 简单自动存取款机 代码和注释如下: # @File : 新自动取款机.py # @Author : zh # @Date : 2020/2/5 # @Software: PyChar ...

  3. pythonATM自动存取款机7天密码保护

    kh={1234567890:['123abc___@@@',90000,'aq'],1234567891:['223abc___@@@',60000,'aq'],1234567892:['323ab ...

  4. python atm银行取款系统_Python实现ATM系统

    今天偶尔在知乎上看到某大佬用Python写的ATM系统案例,然后观摩了下他的实现思路和源码,感觉受益颇多,于是就根据自己的思路和目前掌握的Python编程基础将ATM实现了一下,以下是案例解析的过程: ...

  5. 用python做一个银行取款系统_我的第一个Python小程序,大老虎银行存取款机程序!支持转账...

    [Python] 纯文本查看 复制代码import time banksql = [ {"card_id": "6228881234567000", " ...

  6. python——银行自动提款机系统ATM

    目录 管理员类Admin() 管理员Admin类最终代码 人类Person Person类最终代码 信用卡类Card Card类最终代码 ATM类 ATM类最终代码 main()方法 main()方法 ...

  7. 项目名称:银行ATM存取款机系统设计与实现(sql语句模拟操作)

    项目名称:银行ATM存取款机系统设计与实现 一.创建数据库....................................................................... ...

  8. 模拟银行自动终端系统

    本系统模拟银行用户使用ATM机开户.查询.存款.取款功能,要求使用java语言编程实现. 二. 项目功能要求: 项目开始运行显示主菜单为: 银行自助终端系统 ********************* ...

  9. Python模拟屏幕点击自动完成词达人任务(附源码)

    Python模拟屏幕点击自动完成微信词达人任务 该贴是以微信词达人为基础实践而写,如果我们并没有使用词达人,该源码中关键代码部分和模拟点击原理希望对大家有帮助. Python模拟屏幕点击自动完成微信词 ...

最新文章

  1. linux系统调用理解之摘录(1)
  2. 原码、补码、反码、1的补码
  3. 五十六、TodoList的三种写法,祭奠我的前端之路
  4. vue : 无法将“vue”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确, 然后再试一次。
  5. 红旗linux安装oracle,Redflag Linux安装Oracle 10gR2 RAC记事
  6. MATLAB教程(1) MATLAB 基础知识(4)
  7. 软考网络管理员学习笔记8之第八章网络安全技术
  8. 线程:信号量 sem_wait sem_post
  9. 7832:最接近的分数
  10. RedHat7 安装 MySQL 5.7
  11. ASU计算机科学专业大学排名,2013美国大学排名_计算机科学专业研究生排名
  12. Gartner2015新兴技术炒作曲线图
  13. 【Unity】 冰火 MMORPG游戏中的一些数据参考
  14. 干货!从AI应用的五大要素看,AI产业存在哪些机会?(算力算法)
  15. 截断二进制指数退避算法c++实现
  16. 服务器运维的日常工作,运维工作人员日常工作重点有哪些?
  17. Matlab小实例(一)
  18. Vue项目之上传图片
  19. 全国计算机三级考试网络技术--应用题总结
  20. 论文笔记 Semantics-Guided Neural Networks for Efficient Skeleton-Based Human Action Recognition - CVPR

热门文章

  1. 如何使用C语言绘制函数图像
  2. [CVPR2022] Cross-Model Pseudo-Labeling for Semi-Supervised Action Recognition
  3. Rust FFI 编程 - Bindgen 工具介绍
  4. 批量删除HTML链接软件,Excel原来也可以批量删除超链接
  5. 安卓源码分析(一)目录说明
  6. excel删除无尽空白行_Excel批量插入空白行,用上这个小技巧,10秒钟解决3分钟的活...
  7. 那些曾经大热的NFT头像,还有人买吗?
  8. java第一阶段(day11)Utill包常用类
  9. Cesium 笛卡尔坐标系转经纬度高程
  10. linux版格式,计算机的组成、Linux主流三大版本的区别、Linux的哲学思想、Linux的使用格式及命令的使用简...