20190417 Python多级菜单模块
今天自己根据思路写了一个多级菜单的模块。
功能:主要实现了用户逐级目录选择的功能。在每一级目录中可检查用户输入的是否正确及随时退出目录。
问题:对于字典内部的列表值还无法读取
代码如下:
data = {
'北京':{
'昌平':{
'沙河':['oldboy','test'],
'天通苑':['链家地产','我爱我家'],
'沙河东':['屈臣氏','seven-eleven']
},
'朝阳':{
'望京':['奔驰','陌陌'],
'国贸':['CICC','HP'],
'东直门':['Advent','飞信'],
},
'海淀':{},
},
'山东':{
'德州':{},
'青岛':{},
'济南':{},
'烟台':{},
},
'广东':{
'广州':{
'黄埔':['沙浦','双岗'],
'天河':['东圃','黄村'],
'越秀':['杨箕','中山八路'],
},
'深圳':{
'宝安':['圣淘沙','唯也纳'],
'南山':['腾讯','深南大道'],
},
'东莞':{
'石排': ['水吉村', '康达厂'],
'石龙':['金沙湾', '石龙火车站'],
'茶山': ['博头', '恒宝']
},
},
}
exit_flag = False
while not exit_flag:
for i in data:
print(i)
choise = input('请输入你所在的省:')
if choise == 'q':
exit_flag = True
elif choise not in data.keys():
print('选择错误,请重新选择!')
continue
# else:
# print('选择有误,请重新输入:')
while not exit_flag:
for i2 in data[choise]:
print(i2)
choise2 = input('请输入你所在的市:')
if choise2 == 'q':
exit_flag = True
elif choise2 not in data[choise].keys():
print('选择错误,请重新选择!')
continue
while not exit_flag:
for i3 in data[choise][choise2]:
print(i3)
choise3 = input('请输入你所在的区:')
if choise3 == 'q':
exit_flag = True
elif choise3 not in data[choise][choise2].keys():
print('选择错误,请重新选择!')
continue
while not exit_flag:
for i4 in data[choise][choise2][choise3]:
print(i4)
choise4 = input('请输入你查找的商家:')
if choise4 == 'q':
exit_flag = True