通往死亡之路的python笔记之三级菜单编写

2017-09-28  本文已影响0人  码力

要求:1.打印市、区、街道三级菜单      2.按b可随时返回上一级3.按q可随时退出程序

dict={'北京':{'海淀区':['中关村','北太平庄','西三旗'], '昌平区':['回龙观','霍营','沙河'],'朝阳区':['酒仙桥','望京','将台']},

'上海':{'浦东新区':['陆家嘴','周家渡','塘桥'],'宝山区':['罗店镇','大场镇','杨行镇'],'虹口区':['广中路','曲阳路','欧阳路']},

'广州':{'白云区':['曲沃','侯马','临汾'],'天河区':['运城','新绛','闻喜'],'南沙区':['太原','小店','杏花岭']}}

dict_list = list(dict.keys())

while True:

for i in dict_list:

print(i)

town=input('请输入你的工作地点或输入q(quit)退出:')

while not town.strip():

town = input('请再次输入你的工作地点或输入q(quit)退出:')

if town in dict_list:

area_list=list(dict[town].keys())

#while True:

#for b in area_list:

#print(b)

while True:

for b in area_list:

print(b)

area=input('请选择区,或输入b(back)返回上级菜单,或输入q(quit)退出:')

while not town.strip():

area = input('请正确输入:')

if area in area_list:

row_list=dict[town][area]

#for a in dict[town][area]:

#print(a)

while True:

for a in dict[town][area]:

print(a)

row=input('请选择街道,或输入b(back)返回上级菜单,或输入q(quit)退出:')

while not row.strip():

row = input('请正确输入:')

if row in dict[town][area]:

print ('您的信息是:\n',town,'(市)',area,'(区)',row,'(路)')

exit()

elif row == 'b':

break

elif row == 'q':

exit()

else:

print('您输入的地点有误 请重新输入')

elif area == 'b':      ###break  终止此次循环  跳到上一个循环

break

elif area == 'q':    ####直接退出程序

exit()

else:

print('您输入的地点有误 请重新输入')

elif town == 'q':

break

else:

print('您输入的地点有误 请重新输入')

dict={'北京':{'海淀区':['中关村','北太平庄','西三旗'], '昌平区':['回龙观','霍营','沙河'],'朝阳区':['酒仙桥','望京','将台']},

'上海':{'浦东新区':['陆家嘴','周家渡','塘桥'],'宝山区':['罗店镇','大场镇','杨行镇'],'虹口区':['广中路','曲阳路','欧阳路']},

'广州':{'白云区':['曲沃','侯马','临汾'],'天河区':['运城','新绛','闻喜'],'南沙区':['太原','小店','杏花岭']}}

dict_list = list(dict.keys())              ##将北上广以列表形式显示出来

while True:

for i in dict_list:

print(i)            #打印市

town=input('请输入你的工作地点或输入q(quit)退出:')

while not town.strip():

town = input('请再次输入你的工作地点或输入q(quit)退出:')

if town in dict_list:              #判断是否在列表中

area_list=list(dict[town].keys())  #显示区信息 以列表形式

#while True:

#for b in area_list:

#print(b)

while True:

for b in area_list:        #循环读取区信息

print(b)

area=input('请选择区,或输入b(back)返回上级菜单,或输入q(quit)退出:')

while not town.strip():

area = input('请正确输入:')

if area in area_list:

row_list=dict[town][area]      #街道信息

#for a in dict[town][area]:

#print(a)

while True:

for a in dict[town][area]:

print(a)

row=input('请选择街道,或输入b(back)返回上级菜单,或输入q(quit)退出:')

while not row.strip():

row = input('请正确输入:')

if row in dict[town][area]:

print ('您的信息是:\n',town,'(市)',area,'(区)',row,'(路)')

exit()

elif row == 'b':

break            #结束此次循环 自动跳到上一层循环

elif row == 'q':

exit()          #直接终止程序

else:

print('您输入的地点有误 请重新输入')

elif area == 'b':      ###break  终止此次循环  跳到上一个循环

break

elif area == 'q':    ####直接退出程序

exit()

else:

print('您输入的地点有误 请重新输入')

elif town == 'q':

break

else:

print('您输入的地点有误 请重新输入')

上一篇下一篇

猜你喜欢

热点阅读