用字典儲存資料
可以隨時返回上一級,隨時退出程式
只能用迴圈判斷等內建方法,不得匯入模組
menu = { `廣東`:{ `廣州`:{ `越秀區`:{ `面積`:`33.80`, `人口`:`115萬`, `郵政編碼`:`510030`, `區政府駐地`:`越華路183號`, `行政程式碼`:`440104` },`天河區`:{ `面積`:`96.33`, `人口`:`143萬`, `郵政編碼`:`510630`, `區政府駐地`:`天府路1號`, `行政程式碼`:`440106` },`荔灣區`:{ `面積`:`59.10`, `人口`:`89萬 `, `郵政編碼`:`510145`, `區政府駐地`:`中山七路328號`, `行政程式碼`:`440103` } }, `深圳`:{ `福田區`:{ `面積`:`78.66`, `常住人口`:`135.71`, `戶籍人口`:`83.35`, `非戶籍人口`:`52.36`, `郵政編碼`:`518000` },`羅湖區`:{ `面積`:`78.76`, `常住人口`:`95.37`, `戶籍人口`:`55.92`, `非戶籍人口`:`39.46`, `郵政編碼`:`518001` } } }, `湖北`:{ `武漢`:{ `礄口區`:{ `行政程式碼`:`420104`, `面積`:`41.9`, `常住人口`:`64萬`, `郵政編碼`:`430000`, `政府駐地`:`榮華街道沿江大道518號` },`江岸區`:{ `行政程式碼`:`420102`, `面積`:`64.24`, `常住人口`:`121萬`, `郵政編碼`:`430014 `, `政府駐地`:`四唯街道六合路1號` } }, `黃石`:{ `大冶市`:{ `面積`:`1566.3`, `人口`:`95.9萬(2014年)`, `政府駐地`:`東嶽路街道湛月路` },`陽新縣`:{ `面積`:`2780`, `人口`:`105.94萬(2014年) `, `政府駐地`:`興國鎮儒學路` } } } }
dynamic_menu = menu #實現動態迴圈選單 last_meny_list = [] #儲存所有的父級層的值,最好一個為當前層的上一層 while True: #迴圈列印出當前選單的所有key for key in dynamic_menu: print(key) choice = input(`>>>:`).strip() if len(choice) == 0:continue #如果沒有輸入則不執行以下程式碼,節約資源 if choice in dynamic_menu: #判斷輸入的值是否在所選範圍 last_meny_list.append(dynamic_menu) #記錄上一層的值存到列表 ,為了實現隨時返回上一層功能 dynamic_menu = dynamic_menu[choice] #動態改成下一層的值 elif choice == `9`: #返回上一層 if last_meny_list: dynamic_menu = last_meny_list.pop() elif choice == `886`: #退出迴圈 break else: print(`無此項`.center(20,`*`)) print(`bye`.center(30,`/`))