Python字典实现简单的三级菜单(实例讲解)


Posted in Python onJuly 31, 2017

如下所示:

data = {
 "北京":{
  "昌平":{"沙河":["oldboy","test"],"天通苑":["链接地产","我爱我家"]},
  "朝阳":{"望京":["奔驰","陌陌"],"国贸":["CICC","HP"],"东直门":["advent","飞信"]},
  "海淀":{}
 },
 "山东":{
  "德州":{},
  "青岛":{},
  "济南":{}
 },
 "广东":{
  "东莞":{},
  "常熟":{},
  "佛山":{}
 }
}
exit_flag = False
while not exit_flag:
 for i in data:
  print(i)
 choice_s = input("请输入以上任一省或直辖市名称>>>:")
 if choice_s in data:
  while not exit_flag:
   for i in data[choice_s]:
    print("\t",i)
   choice_q = input("请输入以上任一市区名称>>>:")
   if choice_q in data[choice_s]:
    while not exit_flag:
     for i in data[choice_s][choice_q]:
      print("\t\t",i)
     choice_j = input("请输入以上任一街道名称>>>:")
     if choice_j in data[choice_s][choice_q]:
      for i in data[choice_s][choice_q][choice_j]:
       print("\t\t",i)
      last = input("最后一层,按b返回>>>:")
      if last == "b":
       pass
      elif last == "q":
       exit_flag = True
     if choice_j == "b":
      break
     elif choice_j == "q":
      exit_flag = True
   if choice_q == "b":
    break
   elif choice_q == "q":
    exit_flag = True

要点:

1、字典的层级关系

2、break是终止本次循环,pass是什么也不做,一个占位符而已

3、巧妙使用exit_flag = False

以上这篇Python字典实现简单的三级菜单(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python的Zato发送AMQP消息的教程
Apr 16 Python
用Python实现一个简单的多线程TCP服务器的教程
May 05 Python
浅谈Python中copy()方法的使用
May 21 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
Apr 02 Python
python os.listdir按文件存取时间顺序列出目录的实例
Oct 21 Python
浅谈python下含中文字符串正则表达式的编码问题
Dec 07 Python
使用Django连接Mysql数据库步骤
Jan 15 Python
python中break、continue 、exit() 、pass终止循环的区别详解
Jul 08 Python
Django为窗体加上防机器人的验证码功能过程解析
Aug 14 Python
python 浅谈serial与stm32通信的编码问题
Dec 18 Python
Python word文本自动化操作实现方法解析
Nov 05 Python
python3通过subprocess模块调用脚本并和脚本交互的操作
Dec 05 Python
Python中read()、readline()和readlines()三者间的区别和用法
Jul 30 #Python
深入探究Django中的Session与Cookie
Jul 30 #Python
python中numpy包使用教程之数组和相关操作详解
Jul 30 #Python
利用Python批量压缩png方法实例(支持过滤个别文件与文件夹)
Jul 30 #Python
Python利用BeautifulSoup解析Html的方法示例
Jul 30 #Python
利用python获取当前日期前后N天或N月日期的方法示例
Jul 30 #Python
Python 装饰器使用详解
Jul 29 #Python
You might like
php入门小知识
2008/03/24 PHP
php 启动时报错的简单解决方法
2014/01/27 PHP
PHP关于htmlspecialchars、strip_tags、addslashes的解释
2014/07/04 PHP
Windows7下的php环境配置教程
2015/02/28 PHP
PHP导出带样式的Excel示例代码
2016/08/28 PHP
php脚本守护进程原理与实现方法详解
2017/07/20 PHP
PHP 二维array转换json的实例讲解
2018/08/21 PHP
php设计模式之状态模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
tp5框架前台无限极导航菜单类实现方法分析
2020/03/29 PHP
JavaScript 语法集锦 脚本之家基础推荐
2009/11/15 Javascript
JavaScript动态调整TextArea高度的代码
2010/12/28 Javascript
js获取系统的根路径实现介绍
2013/09/08 Javascript
Node.js编程中客户端Session的使用详解
2015/06/23 Javascript
在JavaScript应用中使用RequireJS来实现延迟加载
2015/07/01 Javascript
Kindeditor在线文本编辑器如何过滤HTML
2016/04/14 Javascript
CSS3 3D 技术手把手教你玩转
2016/09/02 Javascript
Javascript数组中push方法用法分析
2016/10/31 Javascript
JS实现的简单图片切换功能示例【测试可用】
2017/02/14 Javascript
基于jQuery实现瀑布流页面
2017/04/11 jQuery
微信小程序开发搜索功能实现(前端+后端+数据库)
2020/03/04 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
2020/11/01 Javascript
Vue+penlayers实现多边形绘制及展示
2020/12/24 Vue.js
[51:22]Fnatic vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python中异常重试的解决方案详解
2017/05/05 Python
Django项目中包含多个应用时对url的配置方法
2018/05/30 Python
创建Shapefile文件并写入数据的例子
2019/11/26 Python
Python爬取微信小程序通用方法代码实例详解
2020/09/29 Python
linux mint中搜狗输入法导致pycharm卡死的问题
2020/10/28 Python
橄榄树药房:OLIVEDA
2019/09/01 全球购物
这段代码难道不该打印出56吗
2013/02/27 面试题
当文件系统受到破坏时,如何检查和修复系统?
2012/03/09 面试题
测绘工程系学生的自我评价
2013/11/30 职场文书
《生命的药方》教学反思
2014/04/08 职场文书
2014年小学校长工作总结
2014/12/08 职场文书
教师节晚会主持词
2015/06/30 职场文书
Python实现生成bmp图像的方法
2021/06/13 Python