码迷,mamicode.com
首页 > 编程语言 > 详细

课堂练习:Python-三级菜单

时间:2017-09-09 18:56:40      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:动态   while   练习   bsp   choice   blog   循环   put   strip()   

#!/usr/bin/env python
# _authon bruce
# @date: 2017/09/09 15:47
menu = {
    "江西":{
        "赣州":{
            "兴国":{},
            "于都":{}
        },
        "南昌":{},
        "吉安":{}
    },
    "上海":{
        "闵行":{
            "莘庄":{},
            "七宝":{}
        },
        "松江":{},
    },
}
current_layer = menu #实现动态循环
parent_layers = []  #保存所有父级,最后一个永远都是父级
while True:
    for key in current_layer:
        print (key)
    choice = input(">:").strip()
    if len(choice) == 0:continue
    if choice in current_layer:
        parent_layers.append(current_layer)   #在进入下一层之前,把当前层追加到父级变量中
        current_layer = current_layer[choice]
    elif choice == "b":
        if parent_layers:
            current_layer = parent_layers.pop() #取出父级变量中最后一个值,当做当前层的父级
    else:
        print("无此项")

 

课堂练习:Python-三级菜单

标签:动态   while   练习   bsp   choice   blog   循环   put   strip()   

原文地址:http://www.cnblogs.com/bruce61/p/7498865.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!