字典三级菜单(查看子菜单及返回上级退出)
实现内容:
1.可以进入子菜单
2.可以返回上一级
3.可以从任意一级直接退出
dic = { "植物": {"草本植物":["风信子", "牵牛花", "紫罗兰", "牡丹", "向日葵"], "木本植物": ["乔木", "半乔木", "灌木", "如松", "杉", "樟"], "水生植物": ["荷花", "风信子", "马蹄莲", "睡莲", "水仙", "满江红"]}, "动物": {"两栖动物":["青蛙", "蜥蜴", "娃娃鱼", "蛇", "龟", "鳄鱼", "山龟"], "禽类":["鸡", "鸭子", "鹅", "斗鸡", "长尾鸡", "鸽子"], "哺乳类动物":["狗", "牛", "猪", "猫", "老虎", "豹子", "斑马"]} }
li = []
go = True
while go:
for i,v in enumerate(dic,1):
li.append(v)
print(i,v)
u_c = input(">>>")
u_c = int(u_c)
li1 = []
while go:
for i,v in enumerate(dic[li[u_c-1]],1):
print(i,v)
li1.append(v)
u_c1 = str(input(">>>"))
if u_c1.isdigit():
u_c1 = int(u_c1)
elif u_c1.isalpha():
u_c1 == u_c1.lower()
if u_c1 == "b":
li1.clear() # 或者用 del li1[:]
break
elif u_c1 == "q":
go = False
break
while go:
for i in dic[li[u_c-1]][li1[u_c1-1]]:
print(i)
u_c2 = str(input(">>>"))
u_c2 = u_c2.lower()
if u_c2 == "b":
li1.clear() #或者用 del li1[:]
break
elif u_c2 == "q":
go = False
break