简单练习:Python三级菜单优化
Posted 南城南的思念,北城北的等待
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了简单练习:Python三级菜单优化相关的知识,希望对你有一定的参考价值。
1 menu = { 2 ‘北京‘:{ 3 ‘海淀‘:{ 4 ‘五道口‘:{ 5 ‘soho‘:{}, 6 ‘网易‘:{}, 7 ‘google‘:{} 8 }, 9 ‘中关村‘:{ 10 ‘爱奇艺‘:{}, 11 ‘汽车之家‘:{}, 12 ‘youku‘:{}, 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 }
代码如下:
1 current_layer=menu #当前层 2 last_layers=[menu] #上一层 3 while True: 4 for key in current_layer: #打印第一层菜单 5 print(key) 6 choice=input(">>:").strip() #选择第二层菜单 7 if choice in current_layer: 8 last_layers.append(current_layer) #进入下一层菜单前,把当前层菜单加入上一次菜单中 9 current_layer=current_layer[choice] #当前层菜单被重新定义,进入循环打印下一层菜单 10 if choice==0: #选择菜单层为空,结束本次循环 11 continue 12 if choice=="q": #选择菜单层为“q”,结束本层循环 13 break 14 if choice=="b": #选择菜单层为“b”,返回上一层菜单 15 current_layer=last_layers[-1] #返回上一层菜单前,当前层被重新定义 16 last_layers.pop() #删除最后一次进入下一层菜单所加入的上一层列表数据 17 print("程序结束!") 18
以上是关于简单练习:Python三级菜单优化的主要内容,如果未能解决你的问题,请参考以下文章