三級菜單小程序

字典嵌套+循環嵌套:小程序

 

 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('無此項!') 
三級菜單小程序
相關文章
相關標籤/搜索