python 实现一个三个菜单
刚接触py不久,和很多人一样都在学习的路上;很多语言都是需要去理解领悟的,并不是照搬代码去实现一些功能,那样真的没有一点意义,对我们的帮助也是帮助不大,打铁还需自身硬,内功更为重要。
# 三级菜单
menu={
'北京':{
'国贸':{
'HP':{},
'CCTV':{},
'CICC':{},
},
'望京':{
'陌陌':{},
'奔驰':{},
'360':{},
},
'昌平':{
'沙河':{
"沙口村":{},
"阿泰包子":{},
},
'天通苑':{
"链家":{},
"我爱我家":{},
},
'回龙观':{},
},
'海淀':{
"五道口":{
"谷歌":{},
"网易":{},
"Sohu":{},
"Sogou":{},
"快手":{},
},
"中关村":{
"youku":{},
"Iqiyi":{},
"汽车之家":{},
"新东方":{},
"腾讯":{},
}
},
},
'上海':{
"浦东":{
"CICC":{},
"高盛":{},
"摩根":{},
},
"闵行":{},
"静安":{},
},
'山东':{
"济南":{},
"德州":{},
"青岛":{},
},
'河南':{
"郑州":{
"金水区":{
"北三环":{}
},
"二七区":{},
"登封":{},
"管城区":{},
},
"周口":{},
"平顶山":{},
"洛阳":{},
}
}
current_layer=menu #实现动态循环
parent_layers=[] #保存所有父级,最后一个元素永远都是父级
while True:
for key in current_layer:
print(key)
choice=input("请输入查询城市").strip()
if len(choice)==0:continue
if choice in current_layer:
parent_layers.append(current_layer)
current_layer=current_layer[choice]
elif choice=='b':
if parent_layers:
current_layer=parent_layers.pop()
else:
print("无此项")