1、要求使用"key-value"字典,创建一个三级级联菜单,每个菜单下面包含相应的子菜单:例如:map ={ '山东省':{"济南":{"高新区":["科技园","会展中心"]}}}
2、要求可以逐级菜单进行返回上级菜单。
代码语言:javascript复制# 一、定义菜单内容
map_list ={
'山东':{
"济南":{
"高新区":["银座","管委会"],
"会展":["停车场","广场"]
},
"青岛":{
"城阳区":["万达","后街"],
"高新区":["科技馆","会展"]
},
"菏泽": {
"曹县": ["万达", "后街"],
"单县": ["科技馆", "会展"]
}
},
'河南': {
"郑州": {
"高新区": ["银座", "管委会"],
"会展": ["停车场", "广场"]
},
"洛阳": {
"洛龙区": ["万达", "后街"],
"高新区": ["科技馆", "会展"]
},
"商丘":{
"市区": ["万达", "后街"],
"高新区": ["科技馆", "会展"]
},
},
'陕西': {
"渭南": {
"高新区": ["银座", "管委会"],
"会展": ["停车场", "广场"]
},
"宝鸡": {
"宝鸡区": ["万达", "后街"],
"高新区": ["科技馆", "会展"]
},
"西安": {
"市区": ["万达", "后街"],
"高新区": ["科技馆", "会展"]
},
},
}
# 二、定义
while True:
for menu_list in map_list: #定义一级联菜单,将已经完成级联的菜单传给新定义的数值menu_list
print(menu_list) #打印一级菜单
# -------------------------------------------------------------------------------打印第一层输出,打印省份
chose_list = input("选择进入1>>:") #将用户输入定义为chose_list
if chose_list in map_list: #判断用户输入,如果用户输入的数据在定义的字典里面,则为真
while True:
for menu_list1 in map_list[chose_list]: #定义二级菜单menu_list1,如果用户输入的这个菜单在一级菜单里面,则进行打印
print("t",menu_list1)
# -------------------------------------------------------------------------------打印第二层输出,打印城市
chose_list1 = input("选择进入2>>:") #将用户输入定义为chose_list1
if chose_list1 in map_list[chose_list]: #判断用户输入,如果用户输入的数据在定义的字典里面,则为真
while True:
for menu_list2 in map_list[chose_list][chose_list1]: #定义三级菜单menu_list2,如果用户输入的这个菜单在二级菜单里面,则进行打印
print("tt",menu_list2)
# -------------------------------------------------------------------------------打印第三层输出,打印区县
chose_list2 = input("选择进入3>>:") #将用户输入定义为chose_list2
if chose_list2 in map_list[chose_list][chose_list1]: #判断用户输入,如果用户输入的数据在定义的字典里面,则为真
for menu_list3 in map_list[chose_list][chose_list1][chose_list2]: #定义三级菜单menu_list3,如果用户输入的这个菜单在一级、二级、三级菜单里面,则进行打印
print("ttt",menu_list3)
# -------------------------------------------------------------------------------打印第三层区县里面所包含的具体地点事物
chose_list3 = input("最后一层,按b进行返回。>>:") #判断用户是否需要返回,返回上一层级区县
if chose_list3 == 'b':
break
# -------------------------------------------------------------------------------添加判断,来进行确认终端用户是否想要返回上级菜单。也就是返回区县
if chose_list2 == 'b': #判断用户是否返回
break
# -------------------------------------------------------------------------------添加判断,来进行确认终端用户是否想要返回上级菜单。也就是返回城市菜单
if chose_list1 == 'b': #判断用户是否返回
break
# -------------------------------------------------------------------------------添加判断,来进行确认终端用户是否想要返回上级菜单。也就是返回省份