程序: 三级菜单

程序: 三级菜单

要求: 

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





exit_flag=False

current_layer=menu

layers=[menu]

while not exit_flag:
    for key in current_layer:
       print(key)

    choice=input(">>:").strip()

    if len(choice)==0:continue

    elif choice=='b':
        current_layer=layers[-2]
        layers.pop()
    elif choice=='q':
        exit_flag=True
        break
    elif choice not in current_layer:
        print("没有下一级!输入b返回上一级,输入q结束!")
        continue
    else:
        layers.append(current_layer)
        current_layer=current_layer[choice]
三级菜单

 

posted @ 2017-04-01 15:33  Adamanter  阅读(135)  评论(0编辑  收藏  举报