代码:商店导购

-------------------------我的第一个长代码----------------------------

制作一个商店导购程序

# 生成商品列表
name = '''
......#商场所有的商品
'''
new_name = name.split('\n')
goods_list = []
i = 1
for item in new_name:
    i += 1
    price = 5 + i * 3
    temp = {'名称': '%s' % item, '价格': price}
    goods_list.append(temp)


def func2(): #分页显示,执行查看商品列表
    total_count = len(goods_list)
    # 每页显示3条
    per_page_count = 3

    # 总页码数
    max_page_num, a = divmod(total_count, per_page_count)
    if a > 0:
        max_page_num += 1
        pager = input('要查看第几页:(N/n重新输入,r/R返回上一级,b/B退出程序)')
        if pager.upper() == 'N' :
            func2()
        elif pager.upper() == 'R' :
            func3()
        elif pager.upper() == 'B' :
            return
        else:
            pager1 = int(pager)
            if pager1 < 1 or pager1 > max_page_num:
                print('页码不合法,必须是 1 ~ %s' % max_page_num)
            else:
                start = (pager1 - 1) * per_page_count
                end = pager1 * per_page_count
                data = goods_list[start:end]
                for item in data:
                    print(item)
    func2()

def serch(): #执行商品模糊搜索功能
    keys_list = []
    for item2 in goods_list:
        goods_keys = item2['名称']
        keys_list.append(goods_keys)
    # print(keys_list)
    list1 = []
    while True:
        a = input('请输入要搜索的关键字(N/n重新输入,r/R返回上一级,b/B退出程序):')

        if a.upper() == 'N':
            serch()
        elif a.upper() == 'R':
            func3()
        elif a.upper() == 'B':
            return
        else:
            for item3 in keys_list:
                if a in item3:
                    a1 = item3
                    list1.append(a1)
                    print(a1)

            if list1 == []:
                print('此店不售卖,请重新搜索')
                continue
    serch()



def func3():
    print('******欢迎使用良良的购物商城******\n1.查看商品列表\n2.根据关键字搜索指定商品\n3.录入商品')
    menu2 = {'1': '查看商品列表', '2': '根据关键字搜索指定商品','3':'录入商品'}
    input_num2 = input('请选择(输入N/n重新输入,r/R返回上级,b/B退出程序):')
    if input_num2.upper() == 'N':
        func3()
    elif input_num2.upper() == 'R':
        func()
    elif input_num2.upper() == 'B':
        return
    elif input_num2 == '1':
        func2()
    elif input_num2 == '2':
        serch()
    elif input_num2 == '3':
        print('开发者能力不足,敬请期待.....')
    else:
        print('非法输入,请重新输入')
    func3()



def func(): #执行第一层函数
    print('******欢迎使用良良的购物商城******\n1.商品管理\n2.会员管理(不可选,待开发....)')
    menu1 = {'1':'商品管理','2':'会员管理'}
    input_num1 = input('请选择(输入N/n重新输入):')
    if input_num1.upper() =='N':
        return func()
    elif input_num1 == '1':
        func3()
    elif input_num1 == '2':
        print('会员管理(待开发.....)')
    else:
        print('输入有误')
func()

posted @ 2020-07-11 02:19  小杨的冥想课  阅读(192)  评论(0编辑  收藏  举报