day24 新三级菜单

 1 china = {
 2     "shandong":{
 3         "linyi":["lanshan","nanfang","hedong"],
 4         "liaocheng":["liaicheng1","liaicheng2","liaicheng3"],
 5         "qingdao":["qingdao1","qingdao2","qingdao3"]
 6     },
 7     "hubei":{
 8         "wuhan":["hongshan","wuchang","hanyang"],
 9         "suizhou":["suizhou1","suizhou2","suizhou3"],
10         "huangshi":["huangshi1","huangshi2","huangshi3"]
11     },
12     "guangdong":{
13         "guangzhou":["guangzhou1","guangzhou2","guangzhou3"],
14         "dongguan":["dongguan1","dongguan2","dongguan3"],
15         "shenzhen":["shenzhen1","shenzhen2","shenzhen3"]
16     }
17 }
18 print('中国地图'.center(30,"-"))
19 print(china["shandong"])
20 
21 # def threeLM(china):
22 #     while True:
23 #         for i in china:print(i)
24 #         key = input("input>>>").strip()
25 #         if    key == "b" or key == "q": return key        # 如果返回q就一直返回q,不断循序直到返回到最外面4
26 #                                                         # 如果返回b就返回之前输入的key返回上一级
27 #         elif key in china.keys() and china[key]:
28 #             ret = threeLM(china[key])
29 #             if ret == "q":return "q"
30 #         elif (not china.get(key)) or (not china[key]) : continue
31 
32 l = [china]
33 while l:
34     for key    in l[-1]:print(key)
35     k = input("input>>>").strip()
36     if k in l[-1].keys() and l[-1][k]: l.append(l[-1][k])
37     elif k == "b": l.pop()
38     elif k == "q": break
39     else: continue
原文地址:https://www.cnblogs.com/shijieli/p/9913515.html