print("开卡成功您的卡号是:%s"%card_id)

def search_account(self): #搜索功能 利用键值卡号 搜索到对应的用户

sch_card = input("请输入要查询的卡号:")

if not self.all_users.get(sch_card) : #判断卡号是否存在

print("输入的卡号错误")

sch_card = input("请重新输入:\n输入'q'退出:")

sch_user = self.all_users[sch_card]

intpass_wd = input("请输入密码:")

passwd = sch_user.card.passwd

if self.verify_passwd(intpass_wd,passwd) == -1: #输错密码重复三次 否则退出操作(完善功能可以进行锁卡)

return -1

print("余额:{}".format(sch_user.card.money)) #输出余额

return 0

def change_pw(self):

pass

def locking_account(self): #锁卡 也是输入卡号 为键值 搜索用户 得到用户信息

lock_card = input("请输入卡号:")

if self.whether_cardid(lock_card) == -1: #判断卡号是否存在

return -1

if self.all_users[lock_card].card.lock: #判断卡是否被锁 (完善功能后开户搜索都可以进行判断)

print("卡已经锁定")

return -1

lock_user = self.all_users[lock_card]

lock_passwd = input("请输入密码:") #输入密码 确认是否是本人操作

passwd = lock_user.card.passwd

if self.verify_passwd(lock_passwd,passwd) == -1: #输入密码错误重复密码

print("密码错误退出操作")

return -1

lock_user.card.lock = True #将卡对象的成员属性锁设为True 锁卡成功

print("此卡已被锁定")

return 0

def deposit_money(self):

pass

def withdraw_money(self):

pass

def transfer_money(self):

pass

def ressiue_card(self):

pass

def unlocking_account(self): #解锁

unlock_card = input("请输入卡号:")

if self.whether_cardid(unlock_card) == -1: 判断卡号是否存在 不存在退出操作

return -1

if not self.all_users[unlock_card].card.lock:

print("卡未被锁定")

return -1

unlock_user = self.all_users[unlock_card]

unlock_passwd = input("请输入密码:")

passwd = unlock_user.card.passwd

if self.verify_passwd(unlock_passwd,passwd) == -1: #输错密码时 重复密码

print("密码错误退出操作")

unlock_user.card.lock = False

print("卡已解锁")

def destory_account(self):

pass

def quit(self):

pickle.dump(self.all_users, self.fp) #退出时将字典写进文件

self.fp.close() #关闭文件通道

def random_acount(self): #生成卡号

cardnum = ""

while True:

for i in range(6):

num = random.randint(0, 9)

cardnum += str(num)

if not self.all_users.get(cardnum):

return cardnum

def verify_passwd(self, passwd_rp, passwd):# 输入错误时 验证密码

index = 2

while passwd_rp != passwd:

passwd_rp = input("密码输入错误请重新输入:")

print("%d次机会"%index)

print("机会使用完毕将操作失败")

index -= 1

if index == 0:

print("操作失败 退出操作")

return -1

return 0

def whether_cardid(self,card_id): #判断是否存在卡号

if self.all_users.get(card_id):

return 0

print("卡号不存在")

return -1

def main(): #测试代码

atm = ATM()

atm.locking_account()

atm.unlocking_account()

if __name__ == '__main__':

main()

python 银行_python 银行系统相关推荐

  1. python银行取钱_python模拟银行自助取款

    # 卡号 card1="1001" pwd1="123456" ban1=10000 card2="1002" pwd2="123 ...

  2. python 银行数据_Python银行数据分析之--民生银行数据转换

    Python银行数据分析之--民生银行数据转换 # 民生银行数据转换 def cmbcBankProcessDo(t, companyName, accountingTitle, begin): t ...

  3. python银行ATM自动取款机

    python银行ATM自动取款机 银行自动取款机 main.py(主程序) admin.py atm.py user.py card.py 总结 银行自动取款机 main.py(主程序) main.p ...

  4. python画代码-Python教程_Python画Mandelbrot集 代码

    Python教程_Python画Mandelbrot集 代码 作者:Comet 来源: 课课家 www.kokojia.com点击数:278发布时间:2015-06-19 11:17:19 曼德勃罗集 ...

  5. 计算机毕业设计ssm+vue基本微信小程序的南通农商银行微银行系统

    项目介绍 计算机信息技术的发展,推动了银行信息化管理的进程,并随着互联网+概念的提出,各种互联网+软件也应运而生.在传统的管理中,各种信息管理难,传播速度慢,需要耗费很长时间统计核查,不能满足现代化的 ...

  6. c语言实现爬虫功能,用C/C 扩展Python语言_python 调用c语言 python实现简单爬虫功能_python实现简单爬虫...

    用C/C 扩展Python语言 Python是一门功能强大的脚本语言,它的强大不仅表现在功能上,还表现在其扩展性上.她提供大量的API以方便程序员利用C/C++对Python进行扩展.因为执行速度慢几 ...

  7. Python银行风控模型的建立 SVM 决策树 神经网络 三种模型比较

    一.首先要感谢原作者的无私分享 原文网页链接: Python银行风控模型的建立_DG息的博客-CSDN博客_银行风控模型 首先感谢"Python银行风控模型的建立"()这位老师,他 ...

  8. Python银行金额大写汉字转换

    Python银行金额大写汉字转换 业务需求: 银行电子支票业务在金额部分需要使用大写的汉字,因此需要将用户录入的数字信息转变为汉字. • 目前只需完成1~5位整数转换即可. 示例: 输入金额:> ...

  9. python编程语言_python编程语言的简要历史

    python编程语言 The Python programming language is a general-purpose programming language that has carved ...

最新文章

  1. 嵌入式开发之信号采集同步---VSYNC和HSYNC的作用以及它们两者之间的关系
  2. 流行学习简单入门与理解
  3. PropertySource和ConfigurationProperties
  4. NavMeshAgent 动态加载障碍物
  5. 【算法分析与设计】桶排序
  6. react中创建一个组件_如何使用React和MomentJS创建一个Countdown组件
  7. tuning 02 Diagnostic and Tuning Tools
  8. docker命令入门 - 夜的第一张
  9. 东北大学linux程序设计考试,Linux认证考试试题及答案
  10. 杰理AD14N/AD15N---程序烧录
  11. user_agent浏览器头部
  12. 使用python代码调用三汇语音卡硬件拨打电话
  13. 连接腾讯云云服务器的mysql
  14. 路飞学城Python-Day78
  15. C++ 模板实现—双向链表: doubly linked list
  16. win10设置计算机关机时间,w10怎么设置自动关机_win10电脑设置自动关机的方法
  17. 0.《JavaScript高级程序设计》(Nicholas C.Zakas 第3版)
  18. 2018上海居住证续签
  19. C#实现Winform间的数据交互的三种方法
  20. 图像或轮廓的Hu矩的定义、优缺点、适用范围,并利用OpenCV的函数HuMoments()和matchShapes()实现Hu矩的计算和轮廓匹配

热门文章

  1. 《编程珠玑》读书笔记 part1
  2. java丐帮_java多线程学习笔记(四)
  3. Spring Boot开发介绍
  4. 地下水深度去除铁锰的滤料详解
  5. 亚信大数据平台产品经理 杨晋:大数据是怎么应用于技术方面的
  6. BADI OVERVIEW
  7. 2021-2027全球与中国3,5-二氯-4-甲基吡啶市场现状及未来发展趋势
  8. Android 解屏代码
  9. 2021新宁二中高考喜报成绩查询,新宁各校高考喜报!最高分684,全县大获得丰收!看有你认识的吗?...
  10. Servlet+html+css+jsp+mysql实现用户登录