根据用户的输入,产生多级列表的效果,中途可按b返回,q直接退出。
#!/user/bin/env python3
dict ={
"华南":{
"广东":["广州市","佛山市","深圳市","东莞市"],
"广西":["南宁市","柳州市","桂林市","北海市"],
"海南":["海口市","三亚市","三沙市","儋州市"]
},
"华东":{
"上海":["黄浦区","卢湾区","徐汇区","长宁区","普陀区"],
"安徽":["合肥市","芜湖市","淮南市","马鞍山市"],
"江苏":["南京市","无锡市","徐州市","常州市","苏州市"]
},
"华北":{
"北京":["东城区","西城区","朝阳区","丰台区","石景山区","海淀区"],
"山西":["太原市","大同市","阳泉市","长治市"],
"河北":["石家庄市","唐山市","秦皇岛市","邢台市"]
},
"华中":{
"湖北":["武汉市","黄石市","十堰市","十堰市"],
"河南":["郑州市","开封市","洛阳市","平顶山市"],
"湖南":["长沙市","株洲市","衡阳市","邵阳市"]
},
"西南":{
"重庆":["万州区","涪陵区","渝中区","大渡口区"],
"四川":["成都市","自贡市","攀枝花市","德阳市"],
"贵州":["贵阳市","六盘水市","遵义市","安顺市"],
},
"特别行政区":{
"香港":["屯门","弯仔","北角","西贡"],
"澳门":["花地玛堂区","圣安多尼堂区","大堂区","望德堂区"],
}
}
flag = True
print('你从哪里来?')
while flag:
qu_list = []
for i in dict.keys():
qu_list.append(i)
for i, j in enumerate(qu_list):
i += 1
print(i, j)
num = input('请输入区号,按q退出:')
if num == 'q':
exit()
else:
num = int(num)
if num <= len(dict):
num_1 = num - 1
qu = qu_list[num_1]
else:
print('您的输入不合法,退出程序')
exit()
while flag:
pro_list = []
for i in dict[qu]:
pro_list.append(i)
for i,j in enumerate(pro_list):
i +=1
print(i,j)
num = input('请输入省序号,按q退出,b返回:')
if num == 'q':
exit()
elif num == 'b':
break
else:
num = int(num)
num_1 = num - 1
if num <= len(pro_list):
pro = pro_list[num_1]
city_list = []
for i,j in enumerate(dict[qu][pro][0:]):
i += 1
city_list.append(j)
print(i,j)
else:
print('您的输入不合法,退出程序')
exit()
num = input('请输入城市序号,按q退出,b返回:')
if num == 'q':
exit()
elif num == 'b':
continue
else:
num = int(num)
num_1 = num - 1
if num <= len(city_list):
city = city_list[num_1]
else:
print('您的输入不合法,退出程序')
exit()
flag = False
print('你来自' + qu + ' '+ pro + ' ' + city)