字典嵌套+循環嵌套:小程序
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('無此項!')