要求:1.列印市、區、街道三級菜單 2.按b可隨時返回上一級 3.按q可隨時退出程式 1 dict={'北京':{'海澱區':['中關村','北太平莊','西三旗'], '昌平區':['回龍觀','霍營','沙河'],'朝陽區':['酒仙橋','望京','將台']}, 2 '上海':{'浦東新區': ...
要求:1.列印市、區、街道三級菜單 2.按b可隨時返回上一級 3.按q可隨時退出程式
1 dict={'北京':{'海澱區':['中關村','北太平莊','西三旗'], '昌平區':['回龍觀','霍營','沙河'],'朝陽區':['酒仙橋','望京','將台']}, 2 '上海':{'浦東新區':['陸家嘴','周家渡','塘橋'],'寶山區':['羅店鎮','大場鎮','楊行鎮'],'虹口區':['廣中路','曲陽路','歐陽路']}, 3 '廣州':{'白雲區':['曲沃','侯馬','臨汾'],'天河區':['運城','新絳','聞喜'],'南沙區':['太原','小店','杏花嶺']}} 4 dict_list = list(dict.keys()) 5 while True: 6 for i in dict_list: 7 print(i) 8 town=input('請輸入你的工作地點或輸入q(quit)退出:') 9 while not town.strip(): 10 town = input('請再次輸入你的工作地點或輸入q(quit)退出:') 11 if town in dict_list: 12 area_list=list(dict[town].keys()) 13 #while True: 14 #for b in area_list: 15 #print(b) 16 while True: 17 for b in area_list: 18 print(b) 19 area=input('請選擇區,或輸入b(back)返回上級菜單,或輸入q(quit)退出:') 20 while not town.strip(): 21 area = input('請正確輸入:') 22 if area in area_list: 23 row_list=dict[town][area] 24 #for a in dict[town][area]: 25 #print(a) 26 while True: 27 for a in dict[town][area]: 28 print(a) 29 row=input('請選擇街道,或輸入b(back)返回上級菜單,或輸入q(quit)退出:') 30 while not row.strip(): 31 row = input('請正確輸入:') 32 if row in dict[town][area]: 33 print ('您的信息是:\n',town,'(市)',area,'(區)',row,'(路)') 34 exit() 35 elif row == 'b': 36 break 37 elif row == 'q': 38 exit() 39 40 else: 41 print('您輸入的地點有誤 請重新輸入') 42 elif area == 'b': ###break 終止此次迴圈 跳到上一個迴圈 43 break 44 elif area == 'q': ####直接退出程式 45 exit() 46 47 else: 48 print('您輸入的地點有誤 請重新輸入') 49 elif town == 'q': 50 break 51 52 else: 53 print('您輸入的地點有誤 請重新輸入')View Code
dict={'北京':{'海澱區':['中關村','北太平莊','西三旗'], '昌平區':['回龍觀','霍營','沙河'],'朝陽區':['酒仙橋','望京','將台']}, '上海':{'浦東新區':['陸家嘴','周家渡','塘橋'],'寶山區':['羅店鎮','大場鎮','楊行鎮'],'虹口區':['廣中路','曲陽路','歐陽路']}, '廣州':{'白雲區':['曲沃','侯馬','臨汾'],'天河區':['運城','新絳','聞喜'],'南沙區':['太原','小店','杏花嶺']}} dict_list = list(dict.keys()) ##將北上廣以列表形式顯示出來 while True: for i in dict_list: print(i) #列印市 town=input('請輸入你的工作地點或輸入q(quit)退出:') while not town.strip(): town = input('請再次輸入你的工作地點或輸入q(quit)退出:') if town in dict_list: #判斷是否在列表中 area_list=list(dict[town].keys()) #顯示區信息 以列表形式 #while True: #for b in area_list: #print(b) while True: for b in area_list: #迴圈讀取區信息 print(b) area=input('請選擇區,或輸入b(back)返回上級菜單,或輸入q(quit)退出:') while not town.strip(): area = input('請正確輸入:') if area in area_list: row_list=dict[town][area] #街道信息 #for a in dict[town][area]: #print(a) while True: for a in dict[town][area]: print(a) row=input('請選擇街道,或輸入b(back)返回上級菜單,或輸入q(quit)退出:') while not row.strip(): row = input('請正確輸入:') if row in dict[town][area]: print ('您的信息是:\n',town,'(市)',area,'(區)',row,'(路)') exit() elif row == 'b': break #結束此次迴圈 自動跳到上一層迴圈 elif row == 'q': exit() #直接終止程式 else: print('您輸入的地點有誤 請重新輸入') elif area == 'b': ###break 終止此次迴圈 跳到上一個迴圈 break elif area == 'q': ####直接退出程式 exit() else: print('您輸入的地點有誤 請重新輸入') elif town == 'q': break else: print('您輸入的地點有誤 請重新輸入')