Python 三级菜单

Posted

tags:

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

Python 三级菜单

  • 需求

  1. 打印省、市、县三级菜单
  2. 可返回上一级
  3. 可随时退出程序

 

  • 代码实现
技术分享
 1 menu = {
 2     北京:{
 3         海淀:{
 4             五道口:{
 5                 soho:{},
 6                 网易:{},
 7                 google:{}
 8             },
 9             中关村:{
10                 爱奇艺:{},
11                 汽车之家:{},
12                 youku:{},
13             },
14             上地:{
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         黄石:{
48             黄石港:{},
49             上窑:{},
50         },
51         大冶:{
52             商城:{},
53             矿头:{},
54         },
55         黄冈:{
56             将军县:{},
57         },
58     },
59 }
60 
61 current_level = menu #记录当前循环的层
62 last_levels = []     #依次把目前进入的层 存入列表
63 
64 while True:
65     for k in current_level: #循环当前层
66         print(k)
67     choice = input("请输入地址>>: ").strip()
68     if choice == b:
69         if len(last_levels) == 0 :break #列表没有层记录 就是顶点层 则退出程序
70         current_level = last_levels[-1] #当输入 b ,退出时 取出上一层
71         last_levels.pop() #当返回上一层时 删除记录层级的
72     elif choice == q: #当输入 q ,退出程序
73         exit()
74     if choice not in current_level:continue
75     last_levels.append(current_level) #当前层加入 记录列表
76     current_level = current_level[choice] #把用户输入的层 加入到当前层 然后循环
View Code

 

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

Python 三级菜单

python实现三级菜单

学习Python的第二十天三级菜单高级版

python3.5------三级菜单

Python作业二:三级列表

python之三级菜单