Python基础项目:超市商品销售管理系统

Posted 未末0902

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础项目:超市商品销售管理系统相关的知识,希望对你有一定的参考价值。


前言

2020年双十一销售额再创新高,其中天猫销售额突破4900亿元,京东销售额突破2700亿元,与此同时,直播电商的快速发展为此次双十一期间电商销售额的高速增长贡献了较大的力量。

近年来,双十一电商购物节已经成为中国乃至世界的消费狂欢季,2020年各大电商将过往的双11打造成双售制,使得整个活动周期被拉长,将“购物节”打造成了“购物季”,越来越多的品牌和消费者参与这场购物狂欢,2020年双11期间,电商平台全网销售记录再次被打破。


一、什么是超市购物销售管理系统?

不管何时,人们总是喜欢去逛商场和超市,比如宜家,大润发,世纪华联,步步高等等,我们在偌大的超市中,看见琳琅满目的东西,总有一种想把超市搬回家的冲动.

那么,作为商场的管理者,如何清除地知道每天的客流量,营业额呢?这时,强大的商场购物系统就方便高效地解决诸多问题,可以方便的处理业务.

那么它应该有哪些功能呢?

1.使用系统需要登录验证,进入系统后,输入购物预算信息
login
2.用户可以任意查看商品信息、已购买信息
查看商品、查看购买
3.用户根据商品编号购买商品,购买时,检测余额是否够,够就直接扣款,不够就提醒
购买
4.可随时退出(输入exit),退出后,打印已购买商品和余额
{‘F00001’: {‘name’:‘苹果’, ‘price’:1.2},
‘F00002’: {‘name’:‘香蕉’, ‘price’:5.5}, }

接下来就是不同功能地实现界面:

二、

1.登陆界面

建议选择admin或者root,也可以做成管理员顾客两种身份进行切换

2.查看商品信息界面

这里列举了5种水果,有编号,名称和 单价

3.购买商品的信息界面

你买的东西就会展示出来

3.查看购买清单

买的啥东东就会一览无余

4.查看余额

这里大致就是你的小票界面了
5.退出系统

具体代码如下(示例):

"""
 1.使用系统需要登录验证,进入系统后,输入购物预算信息
    login
 2.用户可以任意查看商品信息、已购买信息
    查看商品、查看购买
 3.用户根据商品编号购买商品,购买时,检测余额是否够,够就直接扣款,不够就提醒
    购买
 4.可随时退出(输入exit),退出后,打印已购买商品和余额
       {'F00001': {'name':'苹果', 'price':1.2},
       'F00002': {'name':'香蕉', 'price':5.5}, }
"""
import sys

# 商品列表
goods = {'F00001': {'name': '苹果', 'price': 1.2},
         'F00002': {'name': '香蕉', 'price': 5.5},
         'F00003': {'name': '葡萄', 'price': 6.0},
         'F00004': {'name': '梨子', 'price': 5.0},
         'F00005': {'name': '西瓜', 'price': 2.5}}


# 登录功能
def login():
    """
    验证用户,可以尝试3"""
    users = {"admin": "admin", "cali": "123456"}
    for i in range(3):
        username = input("   请输入你的账户:")
        passwd = input("   请输入密码:")
        if passwd == users.get(username.strip()):
            print("欢迎使用三乐购物系统".center(30, '*'))
            break
        else:
            print(f"登录失败,您还可以尝试{2 - i}次")
    else:
        print("用户已被锁定,请稍后再试")
        # 当需要直接退出程序(脚本)时,可以使用sys.exit(exitcode)
        sys.exit(-1)
        # break


# 查看所有商品信息
def view_product_info():
    print('查看所有商品信息')
    print(f"{'商品编号':<7}{'商品名称':<10}{'单价':<7}")
    for item in goods:
        print(f"{item:<10}{goods[item]['name']:<12}{goods[item]['price']:<10}")


# 查看购买清单
def purchasing_list(shopping_list):
    print('查看购买清单')
    print(f"{'商品编号':<7}{'商品名称':<10}{'单价':<6}{'数量':>6}")
    for item in shopping_list:
        print(f"{item:<10}{goods[item]['name']:<12}{goods[item]['price']:<12}"
              f"{shopping_list[item]}")


# 购买商品
def purchase(balance, shopping_list) -> float:
    number = input("请输入商品编号")
    if number in goods:
        print("开始购买商品")
        quantity = input('请输入您要购买的数量:')
        if quantity.isdigit():
            quantity = int(quantity)
            if quantity * goods[number]['price'] <= balance:
                if number in shopping_list:
                    shopping_list[number] += quantity
                else:
                    shopping_list[number] = quantity
                balance -= quantity * goods[number]['price']
                print("购买成功,请继续...")
                purchasing_list(shopping_list)
            else:
                print(f"您当前余额为:{balance},如需继续购买,请继续充值")
                money = input("输入充值金额")
                if money.isdigit():
                    money = int(money)
                    balance += money
                else:
                    print("输入有误")
    else:
        print("商品编号输入有误")
    return balance


"""
菜单
"""


def menu():
    print('三乐购物系统'.center(30, '*'))
    login()

    # 充值金额 => 也可以考虑封装函数
    credit = input("请充值:")
    if credit.isdigit():
        credit = float(credit)
        # 余额
        balance = credit
    else:
        print("充值失败,请联系管理员!")
        sys.exit(-2)

    # 购买清单初始化为空
    shopping_list = {}
    while True:
        operation = """
        请输入想进行的操作:
        1.输入1查看所有商品信息
        2.输入2购买商品
        3.输入3查看购买清单
        4.输入4查看余额
        5.输入5退出系统
        """
        choice = input(operation).strip()
        if choice == '5':
            break
        elif choice == '1':
            view_product_info()
        elif choice == '2':
            balance = purchase(balance, shopping_list)
        elif choice == '3':
            purchasing_list(shopping_list)
        elif choice == '4':
            if balance > 0:
                print("查看余额")
                print(f"您目前余额为:{float('%.2f' % balance)}")
        else:
            print("输入有误,请重新输入")

    # 打印小票
    print(f"{'欢迎光临三乐超市':^35}")
    print("=" * 40)
    print(f"{'商品编号':<7}{'商品名称':<10}{'单价':<5}{'数量':<5}{'总价':<5}")
    for item in shopping_list:
        print(f"{item:<10}{goods[item]['name']:<5}{goods[item]['price']:>9}"
              f"{shopping_list[item]:>5}"
              f"{float('%.2f' % (shopping_list[item] * goods[item]['price'])):>7}")
    print(f"账户余额:{float('%.2f' % balance)}")
    print("=" * 40)
    print(f"{'谢谢惠顾,欢迎下次光临':^35}")
    print(f"{'请保管好您的小票':^35}")


if __name__ == "__main__":
    menu()

总结

其实这个购物系统地功能还是比较简单的,适合初学者,还没有引用mysql和爬虫,也只是简单的使用函数来写的,所以说后期还会有购物系统第二版的发布哦,敬请期待.

当时自己写函数功能的时候也是觉得好难,希望大家不要急,慢慢来,一个一个功能慢慢实现,等你所有代码敲完,你会感觉:哇,amazing!!!
加油吧.

写的过程中有任何问题都可以评论或者私信我,有时间一定会回复的哈!
如果您觉得这篇文章有帮助,麻烦点个赞**再走哈,谢谢!!!****

以上是关于Python基础项目:超市商品销售管理系统的主要内容,如果未能解决你的问题,请参考以下文章

咏南超市收银系统

超市收银系统设计

基于JavaSwing+Mysql的超市商品管理系统设计和实现

Python做数据分析分析社区超市运营数据,自动更新促销时间

手持机设备在超市零售门店的应用管理

Java项目:超市进销存系统设计和实现(java+Springboot+ssm+mysql+jsp+maven)