python基础之省份三级菜单
菜单
1 2 3 4 5 6 7 8 9 10 11 12 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 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | menu = { #定义一个字典 '北京' :{ '海淀' :{ '五道口' :{ 'soho' :{}, '网易' :{}, 'google' :{} }, '中关村' :{ '爱奇艺' :{}, '汽车之家' :{}, 'youku' :{}, }, '上地' :{ '百度' :{}, }, }, '昌平' :{ '沙河' :{ '老男孩' :{}, '北航' :{}, }, '天通苑' :{}, '回龙观' :{}, }, '朝阳' :{}, '东城' :{}, }, '上海' :{ '闵行' :{ "人民广场" :{ '炸鸡店' :{} } }, '闸北' :{ '火车战' :{ '携程' :{} } }, '浦东' :{}, }, '山东' :{}, } back_flag = 0 while not back_flag: #无限循第一层 for i in menu: #for循环打印第一层字典 print (i) SF = input ( '输入省:' ).strip() #让用户输入选择 if SF in menu: #判断用户输入的选择菜单是否包含;如果包含进入第二层选择 while not back_flag: #让程序停留第二层 for i1 in menu[SF]: # 遍历第二层字典 print (i1) #打印第二层字典 SS = input ( '输入市:' ).strip() #让用户输入选择 if SS in menu[SF]: #判断用户选择二层菜单是否包含 while not back_flag: # 如果包含让程序停留在第三层 for s1 in menu[SF][SS]: # 遍历打印第三层字典 print (s1) xz = input ( "地址:" ).strip() # 让用户输入 if xz in menu[SF][SS]: #判断用户选择是否在三层字典有 while not back_flag: # 如果有让用户停留在四级caid for g in menu[SF][SS][xz]: #遍历打印四级cai单 print ( '你居住在' ,g) du = input ( "4===:" ).strip() # 让用户输入选择 if du = = "b" : # 如果用户输入b就退出程序 back_flag = 1 if du = = "q" : #如果输入q返回上一层 break # else: # back_flag = 1 if xz = = "q" : #如果输入q返回上一层 break if xz = = "b" : # 如果用户输入b就退出程序 back_flag = 1 # else: # back_flag = 1 if SS = = "q" : #如果输入q返回上一层 break if SS = = "b" : back_flag = 1 # else: # back_flag = 1 if SF = = "q" : #如果输入q返回上一层 break if SF = = "b" : # 退出 back_flag = 1 |
测试
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | D:\python\python.exe D: / untitled / dir / for .py 北京 上海 山东 输入省:北京 海淀 昌平 朝阳 东城 输入市:haid 海淀 昌平 朝阳 东城 输入市:海淀 五道口 中关村 上地 地址:q 海淀 昌平 朝阳 东城 输入市:b Process finished with exit code 0 |
草都可以从石头缝隙中长出来更可况你呢
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏