版权声明: https://blog.csdn.net/csdnwgf/article/details/79182232
要求:
1、三级菜单。
2、可依次选择进入子菜单。
主要考察字典、列表的使用,返回上一级可用continue/break等语句。
china_map = {
"华南": {
"广东": ["广州市", "佛山市", "深圳市", "东莞市"],
"广西": ["南宁市", "柳州市", "桂林市", "北海市"],
"海南": ["海口市", "三亚市", "三沙市", "儋州市"]
},
"华东": {
"上海": ["黄浦区", "卢湾区", "徐汇区", "长宁区", "普陀区"],
"安徽": ["合肥市", "芜湖市", "淮南市", "马鞍山市"],
"江苏": ["南京市", "无锡市", "徐州市", "常州市", "苏州市"]
},
"华北": {
"北京": ["东城区", "西城区", "朝阳区", "丰台区", "石景山区", "海淀区"],
"山西": ["太原市", "大同市", "阳泉市", "长治市"],
"河北": ["石家庄市", "唐山市", "秦皇岛市", "邢台市"]
},
"华中": {
"湖北": ["武汉市", "黄石市", "十堰市", "十堰市"],
"河南": ["郑州市", "开封市", "洛阳市", "平顶山市"],
"湖南": ["长沙市", "株洲市", "衡阳市", "邵阳市"]
},
"西南": {
"重庆": ["万州区", "涪陵区", "渝中区", "大渡口区"],
"四川": ["成都市", "自贡市", "攀枝花市", "德阳市"],
"贵州": ["贵阳市", "六盘水市", "遵义市", "安顺市"],
},
"特别行政区": {
"香港": ["屯门", "弯仔", "北角", "西贡"],
"澳门": ["花地玛堂区", "圣安多尼堂区", "大堂区", "望德堂区"],
},
}
print("欢迎来到大中华地区查询系统地".center(40, '-'))
print("大中华地区一级划分:")
for i in china_map:
print(i.center(10, ' '))
flage = False
# 输入大区名字,输入3次错误就退出程序
for i in range(3):
daqu_name = input('\n输入大区名:')
if daqu_name in china_map:
gc_name = china_map[daqu_name]
province_names = gc_name.keys()
print("大中华地区二级划分:".center(40, '-'))
for province_name in province_names:
print(province_name.center(10, ' '))
while True:
sheng_name = input('\n输入省名字:')
if sheng_name in province_names:
shi_name = china_map[daqu_name][sheng_name]
print("大中华地区三级划分:".center(40, '-'))
for shi in shi_name:
print(shi.center(10, ' '))
command = input('b:返回上一级 q:退出')
if command == 'b':
continue
if command == 'q':
flage = True
break
else:
print('您输入的大区名不存在请重新输入,您还有%d次机会' % (3-i))
if flage:
break
else:
print('输入3次错误,程序退出')