要求: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('您输入的地点有误 请重新输入')
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('您输入的地点有误 请重新输入')