标签:ast 实现 返回 循环 奶牛 中学 inpu 熊猫 pre
menu={
‘江苏‘:{
‘南京‘:{
‘江宁‘:{
‘大学城‘:{},
‘龙眠大道‘:{},
‘竹山路‘:{}},
‘鼓楼‘:{
‘南京大学‘:{},
‘新街口‘:{},
‘傣妹火锅‘:{}},
‘秦淮‘:{
‘夫子庙‘:{},
‘老门东‘:{},
‘灯宴‘:{}}
},
‘盐城‘:{
‘东台‘:{
‘富安‘:{},
‘安丰‘:{},
‘中学‘:{}},
‘大丰‘:{
‘麋鹿‘:{},
‘丹顶鹤‘:{},
‘自然保护区‘:{}},
}
},
‘四川‘:{
‘成都‘:{
‘金牛‘:{
‘奶牛‘:{},
‘孔雀‘:{},
‘熊猫‘:{}},
‘武侯‘:{
‘金丝猴‘:{},
‘猕猴‘:{},
‘孙悟空‘:{}},
‘青羊‘:{
‘山羊‘:{},
‘草泥马‘:{},
‘牧羊‘:{}}
},
‘自贡‘:{
‘贡井‘:{
‘贡丸‘:{},
‘鱼丸‘:{},
‘牛肉丸‘:{}},
‘宜宾‘:{
‘彬彬‘:{},‘乒乓‘:{},‘羽毛球‘:{}},
‘荣县‘:{‘荣耀‘:{},‘荣誉‘:{},‘润扬‘:{}}
}
}
}
current_layer = menu # 实现动态循环
parent_layer = [] # 保存所有父级,最后一个元素永远是父亲级
while True:
for key in current_layer:
print(key)
choice=input(">>(输入‘b‘返回上一级,输入‘q‘退出程序):").strip()
if choice in current_layer:
parent_layer.append(current_layer)
current_layer = current_layer[choice]#当前层动态变化
elif choice == "b":#返回上一级
current_layer = parent_layer.pop() # 取出列表最后一个值,因为他就是当前层的父亲级
elif choice == "q":#退出程序
break
else:
print("last level")
标签:ast 实现 返回 循环 奶牛 中学 inpu 熊猫 pre
原文地址:https://www.cnblogs.com/Vicky-M/p/9995975.html