!-- flowchart 箭头图标 勿删 --
import time
import random
class Users():
#注册开户,输入根本信息
def zhuce(self):
name = input("请输入你的名字:")
phone = int(input("电话:"))
idcard = int(input("身份证号码:"))
#调用Card的静态办法随机生成卡号
iccard = int(Card.randomcard())
# 调用Card的静态办法输入密码
psw = Card.s_psd()
mon = int(input("请输入你的钱:"))
print("你的卡号为%d 密码:%d 金额:%d"%(iccard,psw,mon))
#将相对应的信息存储到字典里
dict_m ={iccard:mon}
dict_c = {iccard:psw}
dict_n = {name: [phone,idcard,psw]}
Atm.dict1.update(dict_c)
Atm.dict2.update(dict_n)
Atm.dict3.update(dict_m)
print(Atm.dict2)
class Card():
@staticmethod
def randomcard():
iccard_s = random.choices(["1","2","3","4","5","6","7","8","9"],k=6)
iccard = "".join(iccard_s)
return iccard
@staticmethod
def s_psd():
s = int(input("请输入你的密码:") )
return s
class Atm():
#存卡和密码
dict1 = {}
#信息
dict2 = {}
#卡和钱
dict3 = {}
#初始化选择功效
def select(self):
print("""
**********************
* *
* welcome to bank *
* *
**********************
""")
time.sleep(1)
print("""
**********************
* 1.登陆 2.开户 *
* 3.查询 4.取款 *
* 5.存款 0.退出 *
* 6.转账 7.改密 *
**********************
""")
num = int(input("请选择服务项目:"))
return num
#开户的功效
def openc(self):
#创立一个用户
a = Users()
#用户调用成员办法在User类中
a.zhuce()
def login(self):
while True:
num = self.select()
if num == 1:
card = int(input("请输入你的卡号:"))
psw = int(input("请输入你的密码:"))
print(Atm.dict1)
#断定是不是存在字典里,不存在则登录不了,登录不了没法进行其他操作
if card in Atm.dict1:
if Atm.dict1.get(card) == psw:
print("登录胜利")
#对功效进行重复
while True:
num =self.select()
if num==1 or num ==2:
print("您已登录")
elif num == 3:
#查询字典的值
cnum = Atm.dict3.get(card)
print("查询胜利",cnum)
elif num == 4:
print("取款")
qnum = int(input("请输入你要取款的金额:"))
Atm.dict3[card] -=qnum
print("您现在的余额为:",Atm.dict3[card])
print(Atm.dict3)
elif num == 5:
print("存款")
qnum = int(input("请输入你要存款的金额:"))
Atm.dict3[card] += qnum
print("您现在的余额为:", Atm.dict3[card])
print(Atm.dict3)
#必须要有两个账号,不然没法转账
elif num == 6:
zhanghao = int(input("请输入要转账的号码:"))
znum = int(input("请输入要转账的金额:"))
Atm.dict3[card]-=znum
Atm.dict3[zhanghao] +=znum
print(Atm.dict3)
print("转账胜利")
elif num == 7:
print("更改密码")
m = int(input("请输入新密码:"))
Atm.dict1[card]=m
print("密码更改胜利")
print(Atm.dict1)
elif num == 0:
print("退出体系")
return
else:
print("卡号或密码毛病")
else:
print("卡号不存在,请注册")
elif num == 2:
self.openc()
elif num == 0:
print("退出体系")
return
else:
print("负疚你没有登录,请登录")
if __name__ == "__main__":
#创立一个Atm机子
r = Atm()
#开端登录
r.login()
impor