三级菜单(高大上版)

Posted 叫我大表哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三级菜单(高大上版)相关的知识,希望对你有一定的参考价值。

 1 menu = {
 2     北京:{
 3         朝阳:{
 4             国贸:{
 5                 CICC:{},
 6                 HP:{},
 7                 渣打银行:{},
 8                 CCTV:{},
 9             },
10             望京:{
11                 陌陌:{},
12                 奔驰:{},
13                 360:{},
14             },
15             三里屯:{
16                 优衣库:{},
17                 apple:{},
18             },
19         },
20         昌平:{
21             沙河:{
22                 老男孩:{},
23                 阿泰包子:{},
24             },
25             天通苑:{
26                 链家:{},
27                 我爱我家:{},
28             },
29             回龙观:{},
30         },
31         海淀:{
32             五道口:{
33                 谷歌:{},
34                 网易:{},
35                 搜狐:{},
36                 搜狗:{},
37                 快手:{},
38             },
39             中关村:{
40                 优酷:{},
41                 爱奇艺:{},
42                 汽车之家:{},
43                 新东方:{},
44                 腾讯:{},
45             },
46         },
47     },
48     上海:{
49         浦东:{
50             陆家嘴:{
51                 CICC:{},
52                 高盛:{},
53                 摩根:{},
54             },
55             外滩:{},
56         },
57         闵行:{},
58         静安:{},
59     },
60     山东:{
61         济南:{},
62         青岛:{},
63         德州:{
64             乐陵:{
65                 丁务镇:{},
66                 城区:{},
67             },
68             平原县:{},
69         },
70     },
71 }
72 current_layer = menu   #实现动态循环
73 parent_layers = []   #保存所有父集,最后一个元素永远都是父亲集
74 while True:
75     for key in current_layer:
76         print(key)
77     choice = input(>>>:).strip()
78     if len(choice) == 0:continue
79     if choice in current_layer:
80         parent_layers.append(current_layer)  #在进入下一层之前,把当前层追加到列表中,当用户选择b的时候就可以取列表的最后一个元素出来
81         current_layer = current_layer[choice]  #改成了子层
82     elif choice == b:
83         if parent_layers:
84             current_layer = parent_layers.pop()  #取出列表的最后一个值,它就是当前层的父亲集
85     else:
86         print(无此项)

 

以上是关于三级菜单(高大上版)的主要内容,如果未能解决你的问题,请参考以下文章

三级菜单的实现(python程序)

js+数据库生成三级动态tree导航菜单

jquery两行代码实现侧边栏三级折叠菜单

python-三级菜单和购物车程序代码(补发)

TreeUtils工具类一行代码实现列表转树 实战Java8 三级菜单 三级分类 附视频

1-2 三级菜单