#仓库类 class Repository(): l = {'屠戮之刃':[3900,20], '无影剑-艾雷诺':[3788,22], '子午×××剑':[3899,19], '剑神梁月的钝剑':[3688,22]} def add(self, one): if list(one.name.keys())[0] not in Repository.l: Repository.l[list(one.name.keys())[0]] = list(one.name.values()) else: a = one.name b = list(a.keys())[0] Repository.l[b][-1] += 1 print('完成') def sub(self, one): if list(one.name.keys())[0] not in Repository.l: print('没有该商品')

    elif list(one.name.keys())[0] == 1:
        Repository.l.remove(one.name)
    else:
        a = one.name
        b = list(a.keys())[0]
        Repository.l[b][-1] -= 1
        print()

def show(self):
    n = 0
    for i,k in Repository.l.items():
        n += 1
        print('%d 商品:%-14s\t价格:%-5s \t数量:%-3s' % (n,i, k[0],k[-1]))

class Commdity(Repository): def init(self, name = None, price = None, count = None): self.name = name self.price = price self.count = count

def shop(self):
    return Repository.l

#用户类
class Customer(): sala =50000 def chongzhi(self, money): Customer.sala = Customer.sala + int(money) print('充值成功,现在共有%s元' % self.sala)

#登录类 class Loggin(Customer): ls = {('1','2'):3} def init(self, cid, pwd, name = None): self.cid = cid self.pwd = pwd self.name = name

def login(self):
        if (self.cid, self.pwd) in list(Loggin.ls.keys()):
            print('登录成功')
            return Loggin(self.cid,self.name, self.pwd)
            
        else:
            print('账号密码输入错误')
            return

class Logup(): def logup(self, pwd, name): import random while True: cids = random.randint(10000,99999) if cids not in Loggin.ls: Loggin.ls[str(cids),pwd] = name print('注册成功') print('你的账号:\nid:%-10s\n密码:%-10s\n 名字:%-10s' % (cids,pwd,name)) break else: continue

#购物车 class Shopcar(Customer): l = {} def add(self, one): if Customer.sala <= list(one.name.values())[0][0]: print('请充值') else: if list(one.name.keys())[0] not in Shopcar.l: print('yes') Shopcar.l[list(one.name.keys())[0]] = list(one.name.values())[0] Customer.sala -= list(one.name.values())[0][0] print('购买完成,你的商品都有%s,余额:%s元' % (Shopcar.l,Customer.sala) )

        else:
            print(Shopcar.l[list(one.name.keys())[0]])
            Shopcar.l[list(one.name.keys())[0]][-1] += 1
            Customer.sala -= list(one.name.values())[0][0]

            print('购买完成,你的商品都有%s,余额:%s元' % (Shopcar.l,Customer.sala) )
def sub(self, one):
    if list(one.name.keys())[0] not in Shopcar.l:
        print('没有对应的商品')

    elif Shopcar.l[list(one.name.keys())[0]][-1] == 1:
        Shopcar.l.remove(list(one.name.keys())[0])
        Customer.sala += list(one.name.values())[0][0]
        print('移除成功,你的商品都有%s,余额:%s元' % (Shopcar.l,Customer.sala) )
    else:
        Shopcar.l[list(one.name.keys())[0]][-1] -= 1
        Customer.sala += list(one.name.values())[0][0]
        print('移除成功,你的商品都有%s,余额:%s元' % (Shopcar.l,Customer.sala) )

#装备接口类 class Someequ(): def init(self, name): self.name = name def out_equ(self): return self.name

#接口类 class Io(): def trans(self, inputs, choices): if choices == '1': return {'屠戮之刃':[3900,0]} elif choices == '2': return {'无影剑-艾雷诺':[3788,0]} elif choices == '3': return {'子午×××剑':[3899,0]} elif choices == '4': return { '剑神梁月的钝剑':[3688,0]} else: print('无效参数') #输入类
class Log(): def id(self): ids = input('请输入id:') return ids def mima(self): ma = input('请输入密码:') return ma def mingzi(self): mz= input('请输入名字:') return mz def xuanxiang(self): xx = input('请输入选项:') return xx def xuanze(self): xz = input('请选择:') return xz

print('欢迎光临'.center(50,'*')) while True: print('请选择注册或者登录') print('1. 注册') print('2. 登录') log = Log() xx = log.xuanxiang() if xx == '1': #注册 print('欢迎注册') b = log.mima() c = log.mingzi() loggin = Logup() logs2 =loggin.logup(b,c) continue elif xx == '2': #登录 print('请先登录') a = log.id() b = log.mima() loggin = Loggin(a,b) logs = loggin.login()
if logs != None: while True: print('请选择选项:') print('1.充值') print('2.购买商品 ') print('3.移除商品') print('4.退出') log = Log() xx = log.xuanxiang() if xx == '1': #充值 log = Log() xz = log.xuanze() chongzhi = Customer() chongzhi.chongzhi(xz)

            elif xx == '2':
                #购买
                commdity = Commdity()
                shoplist = commdity.shop()
                repository = Repository()
                repository.show()
                log = Log()
                xz = log.xuanze()
                io = Io()
                ios = io.trans(shoplist,xz)
                pack_equ = Someequ(ios)
                shopcar = Shopcar()
                shopcar.add(pack_equ)
                repository.sub(pack_equ)
            elif xx == '3':
                #移除
                commdity = Commdity()
                shoplist = commdity.shop()
                repository = Repository()
                repository.show()
                log = Log()
                xz = log.xuanze()
                io = Io()
                ios = io.trans(shoplist,xz)
                pack_equ = Someequ(ios)
                shopcar = Shopcar()
                shopcar.sub(pack_equ)
                repository.add(pack_equ)

            elif xx == '4':
                #退出
                print('欢迎下次光临')
                exit()
            else:
                print('无效的选择。请重新选择')
                print('')
    else:
        print('请重新输入')
        input('')
else:
    print('无效的选择,请重新输入')
    input('')