Python學習之day02---學習建立三級級聯選單
阿新 • • 發佈:2018-10-31
1、要求使用"key-value"字典,建立一個三級級聯選單,每個選單下面包含相應的子選單:例如:map ={ '山東省':{"濟南":{"高新區":["科技園","會展中心"]}}}
2、要求可以逐級選單進行返回上級選單。
# 一、定義選單內容 map_list ={ '山東':{ "濟南":{ "高新區":["銀座","管委會"], "會展":["停車場","廣場"] }, "青島":{ "城陽區":["萬達","后街"], "高新區":["科技館","會展"] }, "菏澤": { "曹縣": ["萬達", "后街"], "單縣": ["科技館", "會展"] } }, '河南': { "鄭州": { "高新區": ["銀座", "管委會"], "會展": ["停車場", "廣場"] }, "洛陽": { "洛龍區": ["萬達", "后街"], "高新區": ["科技館", "會展"] }, "商丘":{ "市區": ["萬達", "后街"], "高新區": ["科技館", "會展"] }, }, '陝西': { "渭南": { "高新區": ["銀座", "管委會"], "會展": ["停車場", "廣場"] }, "寶雞": { "寶雞區": ["萬達", "后街"], "高新區": ["科技館", "會展"] }, "西安": { "市區": ["萬達", "后街"], "高新區": ["科技館", "會展"] }, }, } # 二、定義 while True: for menu_list in map_list: #定義一級聯選單,將已經完成級聯的選單傳給新定義的數值menu_list print(menu_list) #列印一級選單 # -------------------------------------------------------------------------------列印第一層輸出,列印省份 chose_list = input("選擇進入1>>:") #將使用者輸入定義為chose_list if chose_list in map_list: #判斷使用者輸入,如果使用者輸入的資料在定義的字典裡面,則為真 while True: for menu_list1 in map_list[chose_list]: #定義二級選單menu_list1,如果使用者輸入的這個選單在一級選單裡面,則進行列印 print("\t",menu_list1) # -------------------------------------------------------------------------------列印第二層輸出,列印城市 chose_list1 = input("選擇進入2>>:") #將使用者輸入定義為chose_list1 if chose_list1 in map_list[chose_list]: #判斷使用者輸入,如果使用者輸入的資料在定義的字典裡面,則為真 while True: for menu_list2 in map_list[chose_list][chose_list1]: #定義三級選單menu_list2,如果使用者輸入的這個選單在二級選單裡面,則進行列印 print("\t\t",menu_list2) # -------------------------------------------------------------------------------列印第三層輸出,列印區縣 chose_list2 = input("選擇進入3>>:") #將使用者輸入定義為chose_list2 if chose_list2 in map_list[chose_list][chose_list1]: #判斷使用者輸入,如果使用者輸入的資料在定義的字典裡面,則為真 for menu_list3 in map_list[chose_list][chose_list1][chose_list2]: #定義三級選單menu_list3,如果使用者輸入的這個選單在一級、二級、三級選單裡面,則進行列印 print("\t\t\t",menu_list3) # -------------------------------------------------------------------------------列印第三層區縣裡面所包含的具體地點事物 chose_list3 = input("最後一層,按b進行返回。>>:") #判斷使用者是否需要返回,返回上一層級區縣 if chose_list3 == 'b': break # -------------------------------------------------------------------------------新增判斷,來進行確認終端使用者是否想要返回上級選單。也就是返回區縣 if chose_list2 == 'b': #判斷使用者是否返回 break # -------------------------------------------------------------------------------新增判斷,來進行確認終端使用者是否想要返回上級選單。也就是返回城市選單 if chose_list1 == 'b': #判斷使用者是否返回 break # -------------------------------------------------------------------------------新增判斷,來進行確認終端使用者是否想要返回上級選單。也就是返回省份