python银行系统-python 银行系统

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

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

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

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

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

sch_card = input("请重新输入: 输入'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()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值