037 Python进阶实战之三级菜单

一、Python进阶实战之三级菜单

  1. 打印省、市、县三级菜单
  2. 可返回上一级
  3. 可随时退出程序
menu = \
{
    '北京':
    {
        '海淀':
        {
            '五道口':
            {
                'soho':{},
                '网易':{},
                'google':{}
            },
            '中关村':
            {
                '爱奇艺':{},
                '汽车之家':{},
                'youku':{},
            },
            '上地':
            {
                '百度':{},
            },
        },
        '昌平':
        {
            '沙河':
            {
                '老男孩':{},
                '北航':{},
            },
            '天通苑':{},
            '回龙观':{},
        },
        '朝阳':{},
        '东城':{},
    },
    '上海':
    {
        '闵行':
        {
            "人民广场":
            {
                '炸鸡店':{}
            }
        },
        '闸北':
        {
            '火车战':{

                '携程':{}
            }
        },
        '浦东':{},
    },
    '山东':{},
}

for i in menu.keys():
    print(i)
while 1:
    value1 = input("第一层>>:")
    if value1 == "b":
        break   # 退出当前循环
    if menu.get(value1) != None:
        for i in menu.get(value1).keys():
            print(i)
    else:
        continue
    while 1:
        value2 = input("第二层>>:")
        if value2 == "b":
            break   # 退出当前循环
        if menu.get(value1).get(value2) != None:
            for i in menu.get(value1).get(value2).keys():
                print(i)
        else:
            continue
        while 1:
            value3 = input("第三层>>:")
            if value3 == "b":
                break   # 退出当前循环
            if menu.get(value1).get(value2).get(value3) != None:
                for i in menu.get(value1).get(value2).get(value3).keys():
                    print(i)
            else:
                continue
            while 1:
                value4 = input("第四层>>:")
                if value4 == "b":
                    break   # 退出当前循环
                if menu.get(value1).get(value2).get(value3).get(value4) != None:
                    for i in menu.get(value1).get(value2).get(value3).get(value4).keys():
                        print(i)
                else:
                    continue

北京
上海
山东
第一层>>:北京
海淀
昌平
朝阳
东城
第二层>>:海淀
五道口
中关村
上地
第三层>>:五道口
soho
网易
google
第四层>>:soho

posted @ 2019-08-07 16:02  正在学习的Barry  阅读(168)  评论(0编辑  收藏  举报
-->