四级菜单实现二

curent_menu=menu
history_menu=[]
quit_flag=False
while not quit_flag:
    print('菜单:q退出,b返回'.center(50,'*'))
    for k in curent_menu:
        print(k)
    choice=input('请选择:')
    if choice == 'q':
        quit_flag = True
    elif choice == 'b':
        if len(history_menu) == 0:
            curent_menu=menu
        else:
            curent_menu=history_menu.pop()    
    elif isinstance(curent_menu,list):
        continue
    elif curent_menu.get(choice):
        history_menu.append(curent_menu)
        curent_menu=curent_menu[choice]

    

  

menu={
    '河南':{
        '郑州':{
            '开封':{
                '景点':['清明上河园','包公祠','禹王台','天波府'],
                '大学':['开封大学','河南大学'],
                '美食':['灌汤包']
               },
            '巩义':{
                '景点':['万寿山','康百万','雪花洞','石窟寺'],
                '大学':['成功学院','广播电视大学']
               }
        },
        '洛阳':{
            '栾川':{
                '景点':['龙潭大峡谷','老君山'],
                '美食':['牛肉汤','浆面条','肉夹馍']
            }
        }
        },
    '江苏':{
        '南京':{
            '玄武区':{
                '景点':['玄武湖','鸡鸣寺','明故宫'],
                '美食':['盐水鸭','鸭血粉丝汤']
            },
            '秦淮区':{
                '景点':['夫子庙','中山陵','秦淮河','老门东'],
                '学校':['南邮','北航']
            }
        }
    },
    '安徽':{}
}

  

原文地址:https://www.cnblogs.com/chbo/p/10133802.html