小姨开水果店的,所以今天用Python写了一个水果店小系统!

187 阅读3分钟

前言

今天晚上才刚下班,小姨就提了我最爱吃的榴莲过来,说不吃就坏了。

我一眼就看破了她的用意,哈哈哈 我这个小姨也是一起长大的,她心里的小九九 我在清楚不过了!肯定是有求于我! 然后就直接问他有啥需要帮忙的吧!直接说就好!

小姨:最近水果店不是要天天去统计水果 数量种类嘛!太麻烦了,而且耗时,你知道我最讨厌这些工作了,请一个人又划不来了,所以你不是程序员嘛,你给我写个那种出来呗!

我:看在榴莲的份上,我就吃点亏帮你写一个吧 ,不过我写的很简陋的哈,和人家那种已经开发好了的肯定没得比的,不过你也就自己用下,应该影响不大!

小姨:行,明天记得给我啊

我:这特么咋跟产品经理一样了,还要加班加点给她做出来!

正文

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

class Fruit:       #定义一个水果类,并封装
    def __init__(self, fname, price, count, remark):  #定义一个结构体
        self.fname = fname
        self.price = price
        self.count = count
        self.remark = remark
    def show_info(self):  #定义一个展示函数,展示水果的相关信息
        print("%s\t\t%d\t\t%d\t\t%s"%(self.fname, self.price, self.count, self.remark))

class Menu: #定义一个菜单类
    def __init__(self): #定义一个结构体,并定义两个变量
        f1 = Fruit("苹果", 6, 10, "苹果很好吃")
        f2 = Fruit("猕猴桃", 10, 20, "猕猴桃很酸")
        self.fruit_list = [f1, f2] #通过调用fruit_list函数,将变量写进列表
    def show_main_menu(self):
        print("======================欢迎使用水果库存系统==========================")
        print("1.显示水果列表")
        print("2.添加新水果")
        print("3.查看特定水果信息")
        print("4.水果下架")
        print("5.退出")
        print("="*65)
        return eval(input("请选择:")) #输入一个数值
    def add_fruit(self): #定义一个添加水果函数
        fname = input("请输入水果名称:")
        f = self.get_fruit(fname) #得到水果名称
        if f is None: #如果水果名称不在列表里面,就新增水果,依次输入价格,库存以及备注信息
            price = eval(input("请输入水果价格:"))
            count = eval(input("请输入水果库存:"))
            remark = input("请输入备注信息:")
            f = Fruit(fname, price, count, remark)
            self.fruit_list.append(f)
        else: #若水果信息在列表里面,执行以下程序
            count = eval(input("请输入追加的库存量:"))
            f.count = f.count + count
        print("添加成功!")
    def get_fruit(self,fname): #得到水果名称
        for f in self.fruit_list:
            if f.fname.__eq__(fname): #.__eq__用于判断字符是否相等
                return f
            return None

    def show_fruit(self): #定义一个函数显示水果信息
        fname = input("请输入水果名称:")
        f = self.get_fruit(fname)
        print("-"*65)
        print("名称\t\t单价\t\t库存\t\t备注")
        if f is None:
            print("对不起,没有找到相关信息!")
        else:
            f.show_info()
        print("-"*65)
    def del_fruit(self): #定义一个函数,将水果下架
        fname = input("请输入需要下架的水果名称:")
        f = self.get_fruit(fname)
        if f is not None:
            slt = input("是否确认删除?(Y/N)")
            if "Y".__eq__(slt.upper()):
                self.fruit_list.remove(f) #使用remove将水果信息从列表中删除
                print("删除成功!")
                return
        print("没有找到需要下架的水果信息!")

    def show_fruit_list(self): #显示水果列表
        print("-"*65)
        print("名称\t\t单价\t\t库存\t\t备注")
        if self.fruit_list is None or len(self.fruit_list)==0:
            print("对不起,库存为空!")
        else:
            for f in self.fruit_list:
                f.show_info()
        print("-"*65)
    def my_exit(self): #定义一个退出函数
        slt = input("是否确认退出?(Y/N)")
        flag = not "Y".__eq__(slt.upper()) #使用upper将输入转化为大写字母,若不与Y相等,则flag=True,并返回flag
        return flag

m = Menu()
flag = True
while flag: #当flag=True时,显示菜单
    slt = m.show_main_menu()
    if slt == 1:
        m.show_fruit_list()
    elif slt == 2:
        m.add_fruit()
    elif slt == 3:
        m.show_fruit()
    elif slt == 4:
        m.del_fruit()
    elif slt == 5:
        flag = m.my_exit()
print("谢谢使用,再见!")

以上就是这个“水果店小系统”的全部代码了。
效果如下:

![](https://p3-tt-ipv6.byteimg.com/large/pgc-image/7b9555df8c6a4beaa3f4dbc5edd8e2fe)

想完善这个功能的,大家直接套用代码就行!