python三级菜单优化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python三级菜单优化相关的知识,希望对你有一定的参考价值。

python三级菜单优化,菜鸟版链接:http://www.cnblogs.com/xuyaping/p/6648170.html

menu = {
‘北京‘:{
‘海淀‘:{
‘五道口‘:{
‘soho‘:{},
‘网易‘:{},
‘google‘:{}
},
‘中关村‘:{
‘爱奇艺‘:{},
‘汽车之家‘:{},
‘youku‘:{},
},
‘上地‘:{
‘百度‘:{},
},
},
‘昌平‘:{
‘沙河‘:{
‘老男孩‘:{},
‘北航‘:{},
},
‘天通苑‘:{},
‘回龙观‘:{},
},
‘朝阳‘:{},
‘东城‘:{},
},
‘上海‘:{
‘闵行‘:{
"人民广场":{
‘炸鸡店‘:{}
}
},
‘闸北‘:{
‘火车战‘:{
‘携程‘:{}
}
},
‘浦东‘:{},
},
‘山东‘:{},
}

current_layer=menu #当前层
last_layers=[menu] #上一层
while True:
for key in current_layer: #打印第一层菜单
print(key)
choice=input(">>:").strip() #选择第二层菜单
if choice in current_layer:
last_layers.append(current_layer) #进入下一层菜单前,把当前层菜单加入上一次菜单中
current_layer=current_layer[choice] #当前层菜单被重新定义,进入循环打印下一层菜单
if choice==0: #选择菜单层为空,结束本次循环
continue
if choice=="q": #选择菜单层为“q”,结束本层循环
break
if choice=="b": #选择菜单层为“b”,返回上一层菜单
current_layer=last_layers[-1] #返回上一层菜单前,当前层被重新定义
last_layers.pop() #删除最后一次进入下一层菜单所加入的上一层列表数据
print("程序结束!")




























































以上是关于python三级菜单优化的主要内容,如果未能解决你的问题,请参考以下文章

Python 三级菜单与优化(一层循环嵌套)

简单练习:Python三级菜单优化

Day4.优化三级菜单+作业题

python 全栈 python基础 三元运算 字符编码 元组 集合 三级菜单优化!

三级菜单购物车程序(自写,待优化)

ComboBox,三级联动菜单,新入门点小白,有些代码有待优化,大神勿喷