三级菜单:
a.可依次进入各级菜单
b.可以动态选择各级菜单
[列表,字典]
#/usr/bin/python3
# -*- coding:utf-8 -*-
#定义字典
district_maps={
"陕西省":{"西安":["莲湖区","未央区","长安区"],"宝鸡":["陈仓区","渭滨区","金台区"],"咸阳":["秦都区","机场"]},
"河北省":{"保定":["xxx","xxxx","休息休息"],"唐山":["嘻嘻嘻","cscds","dcsc"],"ss":["cdcd","cdcdcd"]},
}
while True:
print ("----------中国省份查询--------------")
for a in district_maps: #将字典中的key值赋给a,打印a
print(a)
print ("-----------------------------")
while True:
district_name =input("请输入要查看的省份:") #将省份名赋值给district_name
if district_name in district_maps: #判断district_name是否在字典中
shengfen_name = district_maps[district_name] #使用输入的信息作为key,取出市信息,存在字典
print ("-------------%s所包含的城市-------------" % district_name) #打印所输出的省的城市
for b in shengfen_name: #遍历列表,取出城市名
print(b)
print("---------------------------------")
city_name=input("请输入要查看的城市:") #输入想要查看的城市
if city_name in shengfen_name: #判断城市名是否在省名列表中
qu_name = district_maps[district_name][city_name] #取出城市中的区,存放在列表
print("------------------%s所包含的区-------------------------" % city_name)
for c in qu_name: #遍历列表,取出区名
print (c)
print ("----------------------------------")
if city_name == "q":
exit("--------谢谢使用---------------")
if city_name == "b":
break
if city_name not in shengfen_name:
print ("输入有误,请重新输入")
break
last_stage = input("请问返回上级(b)还是退出(q):")
if last_stage== "q":
exit("--------谢谢使用---------------")
elif last_stage== "b":
print("-------------------------------")
break
elif last_stage != "q"or"b":
exit("-------------输入有误,谢谢使用-----------")
if district_name == "q":
exit ("-----------谢谢使用----------------")
if district_name not in district_maps:
print("输入有误,请重新输入")
执行结果