简单购物系统—Python 小项目

简介: 简单购物系统—Python 小项目

1、需求分析:

函数只是封装功能 接收参数返回结果  不要让函数做跳转。


1、输出欢迎界面还有登录注册菜单

   1、登录

   2、注册

   保留用户信息,目前做不到固话,先注册,注册成功之后再选择登录进去

   用户信息-用户名、密码、初始金额

2、登录成功之后,又弹出菜单

   1、查看商品信息

   2、购买商品,将商品加入购物车

   3、查看和结算购物车

   4、退出


#1、登录页面
def login(username,passwd):
    # print("登录成功")
    # pass
    if username in user and user[username]['passwd'] == passwd:
        return True
#2、注册页面
def register(username,passwd,money):
    # print("注册成功!")
    # pass
    if username in user:
        print("用户名已存在,请重新输入!")
        # if money <= float(user[username]['余额']):
    else:
        user['root'] = {'passwd': passwd,'余额':money}
        print(f"{username}已经注册成功!")
        print(f"{'用户名':<8}{'密码':<10}{'金额':<7}")
        if money.isdigit():
            # money = float(money)
            user['root']['余额'] = float(user['root']['余额'] + money)
            # user[username]['余额'] = float(user[username]['余额'] + money)
            print(f"{username}用户充值成功,你的充值金额为{money},目前余额为:{user['root']['余额']}")
            print(user['root'])
        else:
            print("充值失败,请重新输入!")
#3、开始购物
#3.1查看商品信息
def good():
    print("查看商品信息".center(50,"-"))
    print(f"{'商品编号':<10}{'商品名称':<10}{'单价':<5}")
    for i in shop:  #从shop中取出商品编号、商品名称、单价
        print(f"{i:<10}{shop[i]['name']:>6}{shop[i]['price']:>15}")
shopping_cart = {} #定义一个采购清单,把购买物品的信息都写入进去
#3.2购买商品,将商品加入购物车
def shopping(number,quantity):#定义
    shopping_cart[number] = shopping_cart.get(number,0)+ quantity
    print("商品成功加入购物车")
    print(f"{'商品编号':<10}{'数量':<10}")
    print(f"{number:<10}{quantity:>6}")
#3.3查看和结算购物车
#查看购物车
def checking_cart():
    # global sum_price
    print("购物车".center(30,"="))
    print(f"{'商品编号':<10}{'商品名称':<10}{'单价':<5}{'数量':>10}")
    for i in shopping_cart: #定义一个采购清单,把购买物品的信息都写入进去
        print(i)
        print(f"{i:<10}{shop[i]['name']:>6}{shop[i]['price']:>10}{shopping_cart[i]:>15}")
        print("-"*50)
#结算购物车
        # sum_price = shopping_cart[quantity] * float(shop[number]['price'])
shopping_cart1 = {} #选购完的商品的购物车
sum_price = 0  #单个购物车商品总价初始值为0
sum_price1 = 0 #多个购物车消费金额初始为0
def paying_cart(pay):
    global sum_price,sum_price1
    for i in list(shopping_cart):
        sum_price += shopping_cart[i] * float(shop[i]['price'])
        if sum_price <= float(user[username]['余额']):
            user[username]['余额'] = float(user[username]['余额']) - sum_price
            print(f"购买成功,总计为{sum_price},余额为{float('%.2f' % user[username]['余额'])}")
            shopping_cart1.update(shopping_cart.copy())#将单次购买的购物车中的所有商品存入结算购物车中
            shopping_cart.clear()#结算成功,清空购物车
            sum_price1 += sum_price
            sum_price = 0 #购物车商品总价重置为0
        else:
            print("余额不足,请重新充值")
#4、退出
def exit():
    global sum_price1,balance
    print("谢谢惠顾,欢迎下次光临".center(50,"#"))
    print("-"*50)
    print(f"{'商品编号':<10}{'商品名称':<10}{'单价':<5}{'数量':<10}")
    for i in shopping_cart1:
        print(f"{i:<10}{shop[i]['name']:>6}{shop[i]['price']:>10}{shopping_cart1[i]:<15}")
    print("=="*50)
    print(f"您一共消费:{sum_price1},余额:{float('%.2f' % user[username]['余额'])}")
#主页面
print("欢迎进入三乐购物系统".center(50,"*"))
user = {'root': {'passwd': '123456', '余额': '500'},
        'admin': {'passwd': '255278', '余额': '1000'}, }
shop = {'F00001':{'name':'苹果','price':1.2},
        'F00002':{'name':'香蕉','price':5.0,},
        'F00003': {'name':'梨子','price':'6.5'}}
while True:
    print("1、登录".center(40))
    print("2、注册".center(40))
    print("3、退出".center(40))
    option = input("请输入你的选择:")
    #登录
    if option == '1':
        username = input("请输入你的用户名; ")
        passwd = input("请输入你的密码: ")
        if login(username,passwd):
            print(f"登录成功!,目前的你的余额为{user['root']['余额']}")
            while True:
                print("1、查看商品信息".center(50))
                print("2、开始购物,将商品加入购物车".center(57))
                print("3、查看和结算购物车".center(51))
                print("4、退出".center(45))
                option2 = input("请输入你的选择:")
                if option2 =="1": #查看商品信息
                    good()
                elif option2 =="2": #开始购物,将商品加入购物车
                    print("欢迎来到三乐购物超市".center(30, "#"))
                    number = input("请输入你要购买的商品编号(F00001-F00003):")
                    if number == 'exit':
                        print("您已成功退出登录")
                        exit()
                    else:
                        if number in shop:#查看编号是否存在于shop中
                            quantity = input("请输入你要购买的数量:")
                            if quantity.isdigit(): #如果数量是数字
                                quantity = float(quantity)
                                shopping(number,quantity)
                            else:
                                print("输入的数量有误,请重新输入!")
                        else:
                            print("编号输入不正确,请重新输入")
                elif option2 == "3": #查看和结算购物车
                    checking_cart()
                    print("按Q进行结账".center(20, "@"))
                    pay = input("输入'Q'就可以进行结账):")
                    if pay == "Q":
                        print("正在结算...")
                        paying_cart(pay)
                    else:
                        print("结账按钮输入错误!")
                elif option2 == "4": #退出
                    # print("谢谢惠顾,欢迎下次光临".center(50, "#"))
                    exit()
                    break
                else:
                    print("输入有误!请重新输入")
    #用户注册
    elif option =='2':
        username =input("请输入你的用户名; ")
        passwd = input("请输入你的密码: ")
        money = input("请输入你的充值金额: ")
        register(username, passwd, money)
    #退出系统
    elif option =='3':
        print("您已经退出系统")
        # exit()
    else:
        print("输入错误")

2、运行结果:

1、登录之后可以进行商品信息查询、购物、查看和结算购物车

2.用户注册可以选择充值金额。


相关文章
|
11天前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
143 55
|
1月前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品安全追溯系统的深度学习模型
使用Python实现智能食品安全追溯系统的深度学习模型
64 4
|
21天前
|
机器学习/深度学习 人工智能 算法
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
宠物识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了37种常见的猫狗宠物种类数据集【'阿比西尼亚猫(Abyssinian)', '孟加拉猫(Bengal)', '暹罗猫(Birman)', '孟买猫(Bombay)', '英国短毛猫(British Shorthair)', '埃及猫(Egyptian Mau)', '缅因猫(Maine Coon)', '波斯猫(Persian)', '布偶猫(Ragdoll)', '俄罗斯蓝猫(Russian Blue)', '暹罗猫(Siamese)', '斯芬克斯猫(Sphynx)', '美国斗牛犬
113 29
【宠物识别系统】Python+卷积神经网络算法+深度学习+人工智能+TensorFlow+图像识别
|
2天前
|
存储 算法 Python
文件管理系统中基于 Python 语言的二叉树查找算法探秘
在数字化时代,文件管理系统至关重要。本文探讨了二叉树查找算法在文件管理中的应用,并通过Python代码展示了其实现过程。二叉树是一种非线性数据结构,每个节点最多有两个子节点。通过文件名的字典序构建和查找二叉树,能高效地管理和检索文件。相较于顺序查找,二叉树查找每次比较可排除一半子树,极大提升了查找效率,尤其适用于海量文件管理。Python代码示例包括定义节点类、插入和查找函数,展示了如何快速定位目标文件。二叉树查找算法为文件管理系统的优化提供了有效途径。
34 5
|
22天前
|
机器学习/深度学习 算法 前端开发
基于Python深度学习的果蔬识别系统实现
果蔬识别系统,主要开发语言为Python,基于TensorFlow搭建ResNet卷积神经网络算法模型,通过对12种常见的果蔬('土豆', '圣女果', '大白菜', '大葱', '梨', '胡萝卜', '芒果', '苹果', '西红柿', '韭菜', '香蕉', '黄瓜')图像数据集进行训练,最后得到一个识别精度较高的模型文件。再基于Django框架搭建Web网页端可视化操作界面,以下为项目实现介绍。
37 4
基于Python深度学习的果蔬识别系统实现
|
1月前
|
存储 数据可视化 数据挖掘
Python数据分析项目:抖音短视频达人粉丝增长趋势
Python数据分析项目:抖音短视频达人粉丝增长趋势
|
1月前
|
监控 安全 测试技术
如何在实际项目中应用Python Web开发的安全测试知识?
如何在实际项目中应用Python Web开发的安全测试知识?
32 4
|
1月前
|
Python
Python之音乐专辑管理系统
音乐专辑管理系统是一款用于管理和维护音乐专辑信息的应用程序,支持添加、删除、修改和查询专辑详情(如专辑名、艺术家、发行日期及曲目列表)。系统运行需Python 3.x环境,硬件要求较低,适合个人及小型团队使用。
57 4
|
1月前
|
Python
Python实现摇号系统
本文介绍了如何使用Python构建一个简单的摇号系统,包括用户输入、随机抽取、结果展示和日志记录等功能。通过导入`random`、`datetime`和`logging`模块,实现了从参与者名单中随机抽取中奖者,并记录每次摇号的结果,方便后续查看和审计。完整代码示例提供了从功能实现到主程序调用的全过程。
36 2
|
1月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
84 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络