zoukankan      html  css  js  c++  java
  • 三级菜单小程序

    字典嵌套+循环嵌套:

     1 # __author:"Cheng" 
     2 # date:2018/2/17
     3 
     4 menu_ex = {'江苏省':{'常州市':{'武进区':{}},
     5                     '南京市':{'玄武区':{}},
     6                     '盐城市':{'大丰区':{}},
     7                   },
     8            '浙江省':{'湖州市':{'吴兴区':{}},
     9                     '杭州市':{'余杭区':{}},
    10                     '宁波市':{'江北区':{}},
    11                   },
    12            '四川省':{'成都市':{'金牛区':{}},
    13                     '自贡市':{'大安区':{}},
    14                     '绵阳市':{'安州区':{}},
    15                   }
    16 }
    17 
    18 choose_layer = menu_ex      # 实现动态循环
    19 parent_layers = []  # 保存所有父级为列表 , 最后一个元素永远都是父亲级
    20 while True:
    21     for key in choose_layer:     # 循环输出字典本身
    22         print(key)
    23     usr_choice = input('请输入您的选择:').strip()
    24     if len(usr_choice) == 0:continue    # 如果输入长度是0,那么跳过当次输出,重新循环
    25     if usr_choice in choose_layer:
    26         parent_layers.append(choose_layer)  # 在进入下一层之前,把当前层(也就是下一层的父级)追加到列表中,下一次loop,当用户选择r的时候就可以直接取列表的最后一个值出来
    27         choose_layer = choose_layer[usr_choice]     # 改成了子层
    28     elif usr_choice == 'r':
    29         if parent_layers:   # []
    30             choose_layer = parent_layers.pop()  # 取出列表的最后一个值,因为它就是当前层的父级
    31     else:
    32         print('无此项!') 
    三级菜单小程序
  • 相关阅读:
    第01组 Beta冲刺(5-5)
    第01组 Beta冲刺(4-5)
    第01组 Beta冲刺(3-5)
    第01组 Beta冲刺(2-5)
    第01组 Beta冲刺(1-5)
    软工实践个人总结
    第03组 每周小结 (3/3)
    第03组 每周小结 (2/3)
    第03组 每周小结 (1/3)
    第03组 Beta冲刺 总结
  • 原文地址:https://www.cnblogs.com/cbl321/p/8452307.html
Copyright © 2011-2022 走看看