python应用——购物小车

要求用户输入总资产,例如:2000
显示商品列表,让用户根据序号选择商品,加入购物车
购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功。
附加:可充值、某商品移除购物车

def f(a):
    print('''
====================================
商品列表:
1、手机-------------------------¥7988
2、电脑------------------------¥10888
3、显示器----------------------¥10888
4、switch----------------------¥3000
5、xbox------------------------¥2999
                            输入q退出
====================================
        ''')
    s = ["手机", "电脑", '显示器', 'switch','xbox']
    m = [7988,10888,10888,3000,2999]
    c=[]
    e=[]
    sum=0
    while True:
        b=input('请选择要加入购物车的商品序号:')
        if b not in '12345q':
            print('输入有误,请重新输入。')
        elif len(b)!=1:
            print('请逐一添加商品!')
        elif b=='q':
            break
        else:
            c.append(s[int(b)-1])
            e.append(b)
    print('您所挑选的商品为:',c)
    while True:
        d=input('是否确认购买? y/n:\t').strip().lower()
        if d not in 'yn':
            print('输入有误,请重新输入。')
        else:
            if d == 'y':
                for f in e:
                    sum=sum+int(m[int(f)-1])
                if sum>a:
                    print('余额不足,请充值')
                    break
                if sum<=a:
                    g=a-sum
                    print('''购买成功!
卡内余额为%d。
欢迎下次再来!'''%g)
                    break
            if d == 'n':
                h=int(input('''请选择操作:
1、从购物车删除商品
2、退出
'''))
                while h==1:
                    print(c)
                    i=int(input('请选择要删除的商品:'))
                    c.pop(i-1)
                    e.pop(i-1)
                    j=input('是否继续删除? y/n\t').strip().lower()
                    if j not in 'yn':
                        print('输入有误,请重新输入。')
                    elif j=='y':
                        continue
                    else:
                        print(c)
                        break
                if h==2:
                    break


a = int(input('请输入总资产:'))
while True:
    b=int(input('''请选择要进行的操作:
1、购物
2、充值
3、退出
'''))
    if b==1:
        f(a)
    elif b==2:
        c=int(input('请输入要充值金额:'))
        a=a+c
        print('充值成功,卡内余额为:%d'%a)
    elif b==3:
        break

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值