1. 程式人生 > >簡單練習:Python三級菜單優化

簡單練習:Python三級菜單優化

nbsp while 重新定義 pri 浦東 continue end pan true

 1 menu = {
 2     北京:{
 3         海澱:{
 4             五道口:{
 5                 soho:{},
 6                 網易:{},
 7                 google:{}
 8             },
 9             中關村:{
10                 愛奇藝:{},
11                 汽車之家:{},
12                 youku:{},
13             },
14 上地:{ 15 百度:{}, 16 }, 17 }, 18 昌平:{ 19 沙河:{ 20 北航:{}, 21 }, 22 天通苑:{}, 23 回龍觀:{}, 24 }, 25 朝陽:{}, 26 東城:{}, 27 }, 28 上海:{ 29
閔行:{ 30 "人民廣場":{ 31 炸雞店:{} 32 } 33 }, 34 閘北:{ 35 火車戰:{ 36 攜程:{} 37 } 38 }, 39 浦東:{}, 40 }, 41 山東:{}, 42 }

代碼如下:

 1 current_layer=menu        #當前層
 2 last_layers=[menu]        #
上一層 3 while True: 4 for key in current_layer: #打印第一層菜單 5 print(key) 6 choice=input(">>:").strip() #選擇第二層菜單 7 if choice in current_layer: 8 last_layers.append(current_layer) #進入下一層菜單前,把當前層菜單加入上一次菜單中 9 current_layer=current_layer[choice] #當前層菜單被重新定義,進入循環打印下一層菜單 10 if choice==0: #選擇菜單層為空,結束本次循環 11 continue 12 if choice=="q": #選擇菜單層為“q”,結束本層循環 13 break 14 if choice=="b": #選擇菜單層為“b”,返回上一層菜單 15 current_layer=last_layers[-1] #返回上一層菜單前,當前層被重新定義 16 last_layers.pop() #刪除最後一次進入下一層菜單所加入的上一層列表數據 17 print("程序結束!") 18   

簡單練習:Python三級菜單優化