Python练习:三级菜单

'''
   1, 打印省,市,县三级菜单
   2, 可以返回上一层
   3, 可随时退出程序
'''

data = {
        '山东':{
            '济南':{
                '方舟':{
                    '指定':{},
                    '都是':{}
                },
                '云平':{
                    '阿瑟东': {},
                    '阿瑟东的': {}
                },
            },
            '南昌':{
                '红云':{
                    '安抚我': {},
                    '阿法狗': {}
                },
                '兰州':{
                    '阿斯蒂芬': {},
                    '全微分': {}
                }
            },
            '云台':{
                '沧州':{
                    '啊大大': {},
                    '啊方法': {}
                },
                '安康':{
                    'DD': {},
                    '发顺丰': {}
                }
            },
        },
    '西藏': {
        '济南': {
            '方舟': {
                'D的亲戚': {},
                '风向标': {}
            },
            '云平': {
                '分的': {},
                '嘎嘎嘎': {}
            },
        },
        '南昌': {
            '红云': {
                '请问': {},
                '七二五': {}
            },
            '兰州': {}
        },
        '云台': {
            '沧州': {
                '驱蚊器': {},
                '驱蚊器饿饿': {}
            },
            '安康': {
                '企鹅去': {},
                '去问问去': {}
            }
        }
    }

}
View Code
accept_parameter = data #实现动态循环
# sing_out = data
sing_outs = []          #保存所有父级
while True:
    for key in accept_parameter:
        print(key)
    conie = input('>>>:').strip()
    if len(conie) == 0: continue
    if conie in accept_parameter:
        # sing_out = accept_parameter   #上级层
        sing_outs.append(accept_parameter)
        accept_parameter = accept_parameter[conie]
    elif conie == 'b':
        # accept_parameter = sing_out #返回上级层
        if sing_outs:
            accept_parameter = sing_outs.pop()
    else:
        print('查无此项')

猜你喜欢

转载自www.cnblogs.com/CatdeXin/p/10255555.html
今日推荐