文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python实现简易购物车(未完结)

2023-01-31 00:48

关注
使用Python完成购物车功能
需求:
  1.让用户输入金额
  2.选择要购买的商品,加入购物车
  3.当商品的总价超过了你的金额,提示余额不足
  4.让用户输入N结算,输入Q退出
goods = [
    {'name':'电脑','price':1999},
    {'name':'鼠标','price':15},
    {'name':'键盘','price':30},
    {'name':'硬盘','price':399},
    {'name':'内存','price':489},
]
fei_yong = 0
shop_car = {}   # 键 == 列表的索引,值 == 商品数量
money = input("请输入你的金额:")

if money.isdigit():
    # 真钱
    while 1:
        for i in range(len(goods)):
            print(i+1,goods[i]["name"],goods[i]["price"])
        # ===================商品展示============================
        choose = input("请输入您要购买的商品(输入n或者N结算,输入q或者Q退出):")
        if choose.isdigit() and 0 < int(choose) <= len(goods):
            # 让用户输入商品序号并判断是不是数字以及在不在正常输入范围内
            int_index = int(choose) - 1
            # 通过用户输入的内容减一,获取到goods的索引
            if shop_car.get(int_index) == None:
                shop_car[int_index] = 1
            else:
                shop_car[int_index] += 1

            # ================让用户把商品加入到购物车中====================
        elif choose.upper() == "N":
            # 结算
            for f in shop_car:
                fei_yong = fei_yong + shop_car[f] * goods[f]["price"]

            if int(money) - fei_yong >= 0:
                for k in shop_car:
                    print(f'您购买的商品是{goods[k]["name"]},单价{goods[k]["price"]},数量{shop_car[k]}')
            else:
                print("余额不足")
                # for i,v in enumerate(shop_car,1): # 枚举
                #     print(f'序号:{i},商品:{goods[v]["name"]},数量:{shop_car[v]}')
                #
                # str_del = int(input("请删除商品对应的序号:"))
                # shop_car[str_del - 1] = shop_car[str_del - 1] - 1
                # if shop_car[str_del - 1] == 0:
                #     shop_car.pop(str_del - 1)

        elif choose.upper() == "Q":
            # 退出
            print(f"您此次共消费{fei_yong},剩余余额{int(money) - fei_yong}")
            break
        else:
            print("输入有误,请重新输入!")
else:
    # 输入非数字
    print("请正确输入!")

实现了简易功能,其余功能慢慢完善

 
阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯