python menu三级_python三级菜单

这是一个基于python写的三级菜单。

流程:首先让用户知道省市县,通过输入市名直接查看到市名,再输入市名直接查看到各县以及公司,并在进入省市县前保存它们的父级,通过按b键可返回上一层。

以下是代码

menu = {

'北京':{

'朝阳':{

'国贸':{

'CICC':{},

'HP':{},

'渣打银行':{},

'CCTV':{},

},

'望京':{

'陌陌':{},

'奔驰':{},

'360':{},

},

'三里屯':{

'优衣库':{},

'apple':{},

},

},

'昌平':{

'沙河':{

'老男孩':{},

'阿泰包子':{},

},

'天通苑':{

'链家':{},

'我爱我家':{},

},

'回龙观':{},

},

'海淀':{

'五道口':{

'谷歌':{},

'网易':{},

'Sohu':{},

'Sogo':{},

'快手':{},

},

'中关村':{

'youku':{},

'Iqiyi':{},

'汽车之家':{},

'新东方':{},

'QQ':{},

},

},

},

'上海': {

'浦东':{

'陆家嘴':{

'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) #在进入下已层之前,把当前层(也就是下一层父级)追加到列表中,下一次

#loop,当用户选择b的时候,就可以取出列表的最后一个值出来

current_layer = current_layer[choice] #改成了子层

elif choice == 'b':

if parent_layers: #判断为空

current_layer = parent_layers.pop() #取出列表的最后一个值,因为他就是当前层的父级

else:

print("无此项。")

最后,十分感谢老男孩的alex老师,本人是通过视频学习的,因为还是个苦逼的打工仔,等实现自己想做的工作后,一定请各位大佬吃饭。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值