首页 > 数据库技术 > 详细

py mysql结合面向对象,实现类似超市导购机器的功能【5.商品种类】

时间:2020-08-14 16:16:01      阅读:61      评论:0      收藏:0      [点我收藏+]

py mysql结合面向对象,实现类似超市导购机器的功能(自我总结)

步骤5:

商品种类相关操作实现,主要是各种查询操作

实现代码:

    def run(self):
        while True:
            print(-----商品种类-----)
            print(1.查看所有商品种类)
            print(2.查看每种商品种类下的所有商品信息)
            print(3.根据商品种类查询商品信息)
            print(4.返回上一级)
            num = input(请输入操作类型:)
            if num == 1:
                # 查看所有商品种类
                sql = """select * from goods_cates"""
                count = self.cs1.execute(sql)
                print(共计搜索到%s条商品种类信息 % count)
                goods_cates_info = self.cs1.fetchall()
                for temp in goods_cates_info:
                    t_len = len(temp)
                    for i in range(t_len):
                        if i == t_len - 1:
                            print(分类:%s % temp[i])
                        else:
                            print(CateID:%d % temp[i], end=,)

            elif num == 2:
                # 查看每种商品种类下的所有商品信息
                sql = """select c.name,group_concat(g.name,‘ ‘,b.name,‘ ‘,price) 
                            from goods as g ,goods_cates as c,goods_brands as b 
                            where g.cate_id=c.id and g.brand_id=b.id group by c.id;"""
                count = self.cs1.execute(sql)
                print(共计搜索到%s个商品种类 % count)
                cates_goods = self.cs1.fetchall()
                for temp in cates_goods:
                    t_len = len(temp)
                    for i in range(t_len):
                        if i == t_len - 1:
                            print(temp[i])
                        else:
                            print(temp[i], end=:)

            elif num == 3:
                # 根据商品种类查询商品信息
                find_cate = input(请输入要查询的商品类别名称:)
                args = % + find_cate + %
                sql = """select g.name,c.name,b.name,g.price from goods as g
                                    inner join goods_cates as c on g.cate_id=c.id 
                                    inner join goods_brands as b on g.brand_id=b.id 
                                    having c.name like %s;"""
                count = self.cs1.execute(sql, args)
                print(共计搜索到%s类别下%s个商品信息 % (find_cate, count))
                find_goods_info = self.cs1.fetchall()
                for temp in find_goods_info:
                    t_len = len(temp)
                    for i in range(t_len):
                        if i == t_len - 1:
                            print(temp[i], )
                        else:
                            print(temp[i], end=)

            elif num == 4:
                # 返回上一级
                break
            else:
                print(操作模块选择错误,请重新输入)

 

py mysql结合面向对象,实现类似超市导购机器的功能【5.商品种类】

原文:https://www.cnblogs.com/zhoucs/p/13502545.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!