要求:
1、可依次选择进入各子菜单
2、在任意菜单输入 “q” 就可以直接退出
3、输入 “b” 可以返回上一级菜单
#现有下面字典
dict = {
"山东":{
"临沂":{
"郯城":["郯城一中","郯城二中"],
"兰山":["兰山一中","兰山二中"],
"兰陵":["兰陵一中","兰陵二中"]
},
"济南":{
"天桥":["天桥一中","天桥二中"],
"历城":["历城一中","历程二中"],
"长清":["长清一中","长清二中"]
},
"青岛":{
"黄岛":["青岛一中","青岛二中"],
"崂山":["崂山一中","崂山二中"],
"市南":["市南一中","市南二中"],
}
},
"江苏":{
"无锡":{
"新吴":["新吴一中","新吴二中"],
"锡山":["锡山一中","锡山二中"],
"惠山":["惠山一中","惠山二中"]
},
"南京":{
"玄武":["玄武一中","玄武二中"],
"鼓楼":["鼓楼一中","鼓楼二中"],
"江宁":["江宁一中","江宁二中"]
},
"苏州":{
"吴中":["吴中一中","吴中二中"],
"吴江":["吴江一中","吴江二中"],
"相城":["相城一中","相城二中"]
},
}
}
see_you = False
while not see_you: #not False 就是True
for i in dict:
print(i) #先把字典打印出来
choice = input("选择进入的城市:")
if choice in dict: #如果输入的城市在第一层字典中
while not see_you:
for i2 in dict[choice]: #打印进入后相应的市区
print("\t",i2)
choice2 = input("选择进入的城市")
if choice2 in dict[choice]:
while not see_you:
for i3 in dict[choice][choice2]:
print("\t\t",i3)
choice3 = input("选择要进入的城市")
if choice3 in dict[choice][choice2]:
while not see_you:
for i4 in dict[choice][choice2][choice3]:
print("\t\t",i4)
choice4 = input("按b返回,输入q推出")
if choice4 == "b": #如果输入的是 "b" 那么就结束本层循环,会自动跳入上一层。
break
elif choice4 =="q":
see_you = True #如果输入的是 "q" 那么 改变 see_you这个变量,然后 while循环直接全部结束
if choice3 == "b":
break
elif choice3 == "q":
see_you = True
if choice2 == "b":
break
elif choice2 == "q":
see_you = True
if choice == "b":
break
elif choice == "q":
see_you = True
#这里代码有很多重复的部分,以后有了新的知识后,会再次修改简化此段代码的。