Python练习-短小精干版三级"片儿"

经过今天Alex大神的指点,终于打通任督二脉了!将昨天比较复杂的代码优化至此:(代码注释后期添加)

# 编辑者:闫龙
#三级目录
menu = {
    '北京':{
        '海淀':{
            '五道口':{'soho':{},'网易':{},'google':{}},
            '中关村':{'爱奇艺':{},'汽车之家':{},'youku':{},},
            '上地':{'百度':{},},
        },
        '昌平':{
            '沙河':{'老男孩':{},'北航':{},},
            '天通苑':{},
            '回龙观':{},
        },
        '朝阳':{},
        '东城':{},
    },
    '上海':{
        '闵行':{
            '人民广场':{'炸鸡店':{}}
        },
        '闸北':{
            '火车战':{'携程':{}}
        },
        '浦东':{},
    },
    '山东':{},
}
#定义一个用户输入列表,用来记录用户所输入的
UserSelect=[];
UserInput="";
OldMenu = [];
ViewMenu = menu;
while True:
    for Citys in ViewMenu:
        print(Citys);
    UserInput = input(">>>:").strip();
    if(UserInput == "b"):
        if(len(UserSelect)==0):
            print("已经是最顶层");
        else:
            UserSelect.pop(-1);
            ViewMenu = OldMenu[-1];
            OldMenu.pop(-1);
            continue
    elif(UserInput == "q"):
        exit();
    elif not UserInput in ViewMenu.keys():
        continue;
    else:
        UserSelect.append(UserInput);
        OldMenu.append(ViewMenu);
        ViewMenu = ViewMenu[UserInput];

 

posted @ 2017-03-30 14:56  DragonFire  阅读(575)  评论(0编辑  收藏  举报