python实现购物车的功能

模拟购物车,准备一个列表 goodList = [{'name':'笔记本电脑','price':8000}, {'name':'鼠标', 'price':100}]

5个函数 1.加入购物车 2.收藏商品 3.去结算 4.删除购物车商品 5.清空购物车

购物车 cartList = []

收藏列表 collectSet = {'笔记本电脑','鼠标'} 数据示例

去结算计算出总价即可

思路

这是一个购物车程序,主要实现了以下功能:

1. 加入购物车:用户可以选择商品编号,将商品添加到购物车列表中。
2. 收藏商品:用户可以收藏喜欢的商品,收藏的商品会存储在一个集合中。
3. 去结算:计算购物车中商品的总价。
4. 删除购物车商品:用户可以选择要删除的商品编号,将商品从购物车列表中移除。
5. 清空购物车:清空购物车列表中的所有商品。
6. 查看购物车:显示购物车列表中的所有商品。

代码首先定义了一个商品列表`goodList`和一个购物车列表`cartList`,以及一个收藏集合`collectSet`。然后通过一个循环,让用户输入操作选项,根据用户的选择执行相应的功能。在每个功能中,都有相应的提示信息和错误处理,以确保程序的正常运行。

python 复制代码
'''
# 模拟购物车,准备一个列表 goodList = [{'name':'笔记本电脑','price':8000}, {'name':'鼠标', 'price':100}]
# 5个函数 1.加入购物车 2.收藏商品 3.去结算 4.删除购物车商品 5.清空购物车
# 购物车 cartList = []
# 收藏列表 collectSet = {'笔记本电脑','鼠标'}  数据示例
# 去结算计算出总价即可
'''
goodList = [{'name':'笔记本电脑','price':8000}, {'name':'鼠标', 'price':100}]
print("1.加入购物车 2.收藏商品 3.去结算 4.删除购物车商品 5.清空购物车 6.查看购物车")
cartList = []
collectSet = {'笔记本电脑','鼠标'}
goodList = [{'name': '笔记本电脑', 'price': 8000}, {'name': '鼠标', 'price': 100}]
cartList = []
collectSet = {'笔记本电脑', '鼠标'}
while True:
    cz = input('请输入你选择的操作')
    if cz == '1':
        print('现在的商品有')
        for i in range(len(goodList)):
            print(f'{i+1}-商品名称:{goodList[i]["name"]}-商品价格{goodList[i]["price"]}')
        cart_one = input('请输入你要加入购物车的商品编号: ')
        selected_index = int(cart_one) - 1
        if selected_index >= 0 and selected_index < len(goodList):
            selected_good = goodList[selected_index]
            cartList.append(selected_good)
            print(f"已将 {selected_good['name']} 加入购物车")
        else:
            print("输入的商品编号无效,请重新输入")
    if cz == '2':
        print('现在的商品有')
        for i in range(len(goodList)):
            print(f'{i+1}-商品名称:{goodList[i]["name"]}-商品价格{goodList[i]["price"]}')
        cart_two = input('请输入你想要收藏的商品')
        for i in range(len(goodList)):
            if i < len(cart_two):
                collectSet.add(goodList[i]['name'])
        print(f"现在收藏有{collectSet}")
    if cz == '3':
        print(cartList)
        cart_sum = sum([i['price'] for i in cartList])
        print(f"总价{cart_sum}")
    if cz == '4':
        print("现在的购物车商品是")
        for i in range(len(cartList)):
            print(f'{i + 1}-商品名称:{cartList[i]["name"]}-商品价格{cartList[i]["price"]}')
        print(f"总价{cart_sum}")
        cart_four = input('你想要删除的商品编号是')
        if cart_four.isdigit():
            cart_four = int(cart_four) - 1
            if 0 <= cart_four < len(cartList):
                removed_item = cartList.pop(cart_four)
                print(f"已将 {removed_item['name']} 删除")
            else:
                print("输入的商品编号无效")
        else:
            print("请输入有效的数字")
    if cz == '5':
        cartList.clear()
        print("购物车已经清空")
    if cz == '6':
        print('现在购物车的商品为')
        for i in collectSet:
            print(i)
相关推荐
Stanford_11066 小时前
如何利用Python进行数据分析与可视化的具体操作指南
开发语言·c++·python·微信小程序·微信公众平台·twitter·微信开放平台
Vallelonga6 小时前
Rust 中的数组和数组切片引用
开发语言·rust
Kiri霧6 小时前
Rust模式匹配详解
开发语言·windows·rust
white-persist7 小时前
Python实例方法与Python类的构造方法全解析
开发语言·前端·python·原型模式
千里马-horse7 小时前
Async++ 源码分析8--partitioner.h
开发语言·c++·async++·partitioner
Java 码农7 小时前
Centos7 maven 安装
java·python·centos·maven
Lucis__8 小时前
再探类&对象——C++入门进阶
开发语言·c++
007php0078 小时前
某大厂跳动面试:计算机网络相关问题解析与总结
java·开发语言·学习·计算机网络·mysql·面试·职场和发展
倔强青铜三8 小时前
苦练Python第63天:零基础玩转TOML配置读写,tomllib模块实战
人工智能·python·面试
浔川python社8 小时前
《网络爬虫技术规范与应用指南系列》(xc—3):合规实操与场景落地
python