1 #__author: Pastime_Rr
2 #__product_name: PyCharm
3 #__project_name: Old-Boy
4 #__date: 2018/1/26
5 #__time: 21:12
6 menu={
7 '北京':{
8 '朝阳':{
9 '国贸':{
10 'CICC':{},
11 'HP':{},
12 '渣打银行':{},
13 'CCTV':{}
14 },
15 '望京':{
16 '陌陌':{},
17 '奔驰':{},
18 '360':{},
19 },
20 '三里屯':{
21 '优衣库':{},
22 'apple':{}
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 'QQ':{},
50 },
51 },
52 },
53 '上海':{
54 '浦东':{
55 '陆家嘴':{
56 'CICC':{},
57 '高盛':{},
58 '摩根':{},
59 },
60 '外滩':{},
61
62 },
63 '闵行':{},
64 '静安':{},
65 },
66 '山东':{
67 '济南':{
68
69 },
70 '德州':{
71 '乐陵':{
72 '丁务镇':{}
73 },
74 '平原':{},
75 },
76 '青岛':{},
77 },
78 }
79
80 current_layer = menu
81 parent_layers = []#保存所有父级,最后一个元素永远都是父级
82 while True:
83 for key in current_layer:
84 print(key)
85 choice = input(">>>:").strip()
86 if len(choice) == 0:continue
87 if choice in current_layer:
88 parent_layers.append(current_layer)#在进入下一层之前,把当前层(也就是下一层父级)追加到列表中
89 #下一次循环,当用户选择b选项,就可以直接取列表的最后一个值出来...
90 current_layer = current_layer[choice]#改成了子层
91
92 elif choice == "b":
93 if parent_layers:#空为False
94 current_layer = parent_layers.pop()#取出列表的最后一个值,它就是当前层的父级
95 else:
96 print("最后一层!")
97 else:
98 print("无此项")