三级菜单

需求:

可依次选择进入各子菜单

可从任意一层往回退到上一层

可从任意一层退出程序

 1 #_*_coding:utf-8_*_
 2 
 3 menu = {
 4     '北京':{
 5         '海淀':{
 6             '五道口':{
 7                 'soho':{},
 8                 '网易':{},
 9                 'google':{}
10             },
11             '中关村':{
12                 '爱奇艺':{},
13                 '汽车之家':{},
14                 'youku':{},
15             },
16             '上地':{
17                 '百度':{},
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 current_layer = menu
48 layers = []
49 while True:
50     for k in current_layer:
51         print(k)
52     choice = raw_input(">:").strip()
53     if not choice:
54         continue
55     if choice in current_layer:
56         layers.append(current_layer)
57         current_layer = current_layer[choice]
58     elif choice == 'back':
59         if len(layers) != 0:
60             current_layer = layers.pop()
61         else:
62             print("已经是顶层")
63     elif choice == 'exit':
64         break
View Code

 

posted @ 2018-01-24 10:57  小桂子_1986  阅读(136)  评论(0编辑  收藏  举报