1. 程式人生 > >Python 三級菜單

Python 三級菜單

刪除 中關村 true 依次 strip() level aps 代碼 cnblogs

Python 三級菜單

  • 需求

  1. 打印省、市、縣三級菜單
  2. 可返回上一級
  3. 可隨時退出程序

  • 代碼實現
技術分享
 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 湖北:{ 43 武漢:{ 44 光谷:{}, 45 漢中街:{}, 46 }, 47 黃石:{ 48 黃石港:{}, 49 上窯:{}, 50 }, 51 大冶:{ 52 商城:{}, 53 礦頭:{}, 54 }, 55 黃岡:{ 56 將軍縣:{}, 57 }, 58 }, 59 } 60 61 current_level = menu #記錄當前循環的層 62 last_levels = [] #依次把目前進入的層 存入列表 63 64 while True: 65 for k in current_level: #循環當前層 66 print(k) 67 choice = input("請輸入地址>>: ").strip() 68 if choice == b: 69 if len(last_levels) == 0 :break #列表沒有層記錄 就是頂點層 則退出程序 70 current_level = last_levels[-1] #當輸入 b ,退出時 取出上一層 71 last_levels.pop() #當返回上一層時 刪除記錄層級的 72 elif choice == q: #當輸入 q ,退出程序 73 exit() 74 if choice not in current_level:continue 75 last_levels.append(current_level) #當前層加入 記錄列表 76 current_level = current_level[choice] #把用戶輸入的層 加入到當前層 然後循環
View Code

Python 三級菜單