精华内容
下载资源
问答
  • 三级菜单

    2019-09-28 12:23:41
    作业需求: 1.运行程序输出第一级菜单...2.选择一级菜单某项,输出二级菜单,同理输出三级菜单 3.菜单数据保存在文件中 4.让用户选择是否要退出 5.有返回上一级菜单的功能 1)编写思路 编写思路参考下...


    作业需求:

    1. 运行程序输出第一级菜单

    2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单

    3. 菜单数据保存在文件中

    4. 让用户选择是否要退出

    5. 有返回上一级菜单的功能

    1)编写思路

    编写思路参考下面GitHub链接中的流程图

    https://github.com/KongChan1988/51CTO-Treasure/blob/master/Python_Study/%E7%AC%AC%E4%B8%80%E6%A8%A1%E5%9D%97%E5%AD%A6%E4%B9%A0/Day01/HomeWork/%E4%B8%89%E7%BA%A7%E8%8F%9C%E5%8D%95/%E4%B8%89%E7%BA%A7%E8%8F%9C%E5%8D%95.jpg

    2)具体实现

     

    复制代码
    #-*- Coding:utf-8 -*-
    # Author: D.Gray
    '''
    作业需求:
    1. 运行程序输出第一级菜单
    2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单
    3. 菜单数据保存在文件中
    4. 让用户选择是否要退出
    5. 有返回上一级菜单的功能
    '''
    import sys
    data = {
        '海贼王':{
            '草帽海贼团':{
                '路飞':{'果实能力':'橡胶果实','霸气':['武装色霸气','见闻色霸气','霸王色霸气'],'':21},
                '索罗':{'果实能力':'','霸气':['武装色霸气','见闻色霸气'],'':24},
                '香吉士':{'果实能力':'','霸气':['武装色霸气','见闻色霸气'],'':23},
            },
            '七武海':{
                '波雅汉库克':{'果实能力':'甜甜果实','霸气':['武装色霸气','见闻色霸气','霸王色霸气'],'':20},
                '鹰眼米霍克':{'果实能力':'','霸气':['武装色霸气','见闻色霸气'],'':26},
                '小丑巴基':{'果实能力':'分裂果实','霸气':'','':25},
            },
            '四皇':{
                '香克斯':{'果实能力':'未知','霸气':['武装色霸气','见闻色霸气','霸王色霸气'],'':28},
                '黑胡子':{'果实能力':'黑暗果实','霸气':['武装色霸气','见闻色霸气'],'':28},
                '凯多':{'果实能力':'未知','霸气':['武装色霸气','见闻色霸气'],'':28},
            },
        },
        '妖精的尾巴':{
            '灭龙魔导师':{
                '纳兹':{'属性能力':'火之灭龙魔法','':21,},
                '伽吉鲁':{'属性能力':'铁之灭龙魔法','':23,},
                '温蒂':{'属性能力':'天之灭龙魔法','':18,},
            },
            '超S魔导师':{
                '吉尔达斯':{'属性能力':'粉碎','':28},
                '艾璐萨':{'属性能力':'变装魔法','':26},
                '米拉杰':{'属性能力':'变成撒旦','':27},
            },
            '六魔将':{
                '深夜':{'属性能力':'扭曲空间','':24},
                '克布拉':{'属性能力':'毒之灭龙魔法','':24},
                '安吉拉':{'属性能力':'召唤星灵','':22},
            },
        },
        '火影':{
           '木叶村':{
               '宇智波.鼬': {'属性能力':'万花筒写轮眼','':26},
               '日向雏田': {'属性能力':'白眼','':24},
               '我爱罗': {'属性能力':'砂纸守鹤','':24},
           },
            '':{
                '佩恩':{'属性能力':'轮回眼','':28},
                '鬼鲛':{'属性能力':['水遁','鲛肌'],'':28},
                '迪达拉':{'属性能力':['黏土炸弹','自爆'],'':28}
            },
            '代目':{
                '初代':{'姓名':'千手柱间','属性能力':'树诞降临','':99999},
                '三代':{'姓名':'猿飞','属性能力':['土流大河','召唤猿魔'],'':64},
                '四代':{'姓名':'波风水门','属性能力':['飞雷神之术','螺旋丸'],'':34},
            },
        },
    }
    def _exit():                          #定义一个退出循环打印查询结果函数
        print('*********查询结果*******')
        for query_result in query_results:
            print(query_result)
        sys.exit('退出程序')
    query_results = []      #定义一个空列表,用来储存查询结果
    for d1 in data:         #首先遍历第一级菜单并打印
        print(d1)
    while True:                 #循环第一级菜单,如果用户输入内容错误或为空则给出提示,直到为True执行第二层菜单循环
        choices = input('请选择漫画>>>:')
        if choices in data:         #判断用户输入内容是否包含在第一层菜单内
            while True:         #循环第二级菜单,如果用户输入内容错误或为空则给出提示,直到为True执行第三层菜单循环
                for d2 in data[choices]:    #遍历第二级菜单并打印
                    print('\t',d2)
                choices2 = input('请选择下级菜单>>>:')
                if choices2 in data[choices]:   #判断用户输入内容是否包含在第二层菜单内
                    while True: #循环第三级菜单,如果用户输入内容错误或为空则给出提示,直到为True执行最后一层循环
                        for d3 in data[choices][choices2]:  #遍历第三级菜单并打印
                            print('\t\t\t',d3)
                        choices3 = input('请选择动漫人物>>>:')
                        if choices3 in data[choices][choices2]: #判断用户输入内容是否包含在第三层菜单内
                            query_results.append(choices3)          #将choices3的值存入 query_results列表中
                            for result in data[choices][choices2][choices3].items():  #循环遍历第三级菜单参数
                                query_results.append(result)        #根据用户输入choices3为键,找到相应的值,
                                                                    # 存入query_results列表中并打印
                                print(result)
                            user_goon = input('是否继续查询>>>?   q:退出查询')
                            if user_goon != 'q':        #判断用户是否继续查询,如结果不为q则用户继续选择想要查询的人物
                                pass
                            else:                       #判断用户是否继续查询,如结果为q则退出整个循环
                                _exit()
                        elif choices3 == '' or choices3 == ' ':     #判断用户输入的choices3内容是否为空
                            print("输入不能为空")
                        elif choices3 == 'b':               #判断用户输入内容是否为返回上一级菜单
                            break
                        elif choices3 =='q':        #判断用户输入内容是否为q
                            _exit()
                        else:                       #判断用户输入内容是否存在
                            print('人物不存在请重新输入')
                elif choices2 == '' or choices2 == ' ':
                    print("输入不能为空")
                elif choices2 == 'q':
                    _exit()
                elif choices2 == 'b':
                    break
                else:
                    print('菜单不存在请重新输入')
        elif choices == '' or choices == ' ':
            print("输入不能为空")
        elif choices == 'q':
            _exit()
        else:
    print('漫画不存在请重新输入')
    复制代码

    3)Github笔记

    第一周的笔记的地址是:

    https://github.com/KongChan1988/51CTO-Treasure/tree/master/Python_Study/%E7%AC%AC%E4%B8%80%E6%A8%A1%E5%9D%97%E5%AD%A6%E4%B9%A0/Day01/Practice%20Notes

    第一周作业的地址是:

    https://github.com/KongChan1988/51CTO-Treasure/blob/master/Python_Study/%E7%AC%AC%E4%B8%80%E6%A8%A1%E5%9D%97%E5%AD%A6%E4%B9%A0/Day01/HomeWork/%E4%B8%89%E7%BA%A7%E8%8F%9C%E5%8D%95/%E4%B8%89%E7%BA%A7%E8%8F%9C%E5%8D%95.py

     


     

    4)Readme.md文档

    https://github.com/KongChan1988/51CTO-Treasure/blob/master/Python_Study/%E7%AC%AC%E4%B8%80%E6%A8%A1%E5%9D%97%E5%AD%A6%E4%B9%A0/Day01/HomeWork/%E4%B8%89%E7%BA%A7%E8%8F%9C%E5%8D%95/readme.md

     

    转载于:https://www.cnblogs.com/gaodi2345/p/11412780.html

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,107
精华内容 2,842
关键字:

三级菜单