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实现批量转换文件编码(批转换编码示例)
Jan 23 Python
python海龟绘图实例教程
Jul 24 Python
使用Python程序抓取新浪在国内的所有IP的教程
May 04 Python
解密Python中的描述符(descriptor)
Jun 03 Python
python转换字符串为摩尔斯电码的方法
Jul 06 Python
利用Tkinter(python3.6)实现一个简单计算器
Dec 21 Python
python实现验证码识别功能
Jun 07 Python
讲解Python3中NumPy数组寻找特定元素下标的两种方法
Aug 04 Python
Python实现字符串中某个字母的替代功能
Oct 21 Python
PyQt5多线程刷新界面防假死示例
Dec 13 Python
python plotly画柱状图代码实例
Dec 13 Python
Python Matplotlib绘制动画的代码详解
May 30 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
adodb与adodb_lite之比较
2006/12/31 PHP
CodeIgniter框架数据库事务处理的设计缺陷和解决方案
2014/07/25 PHP
CodeIgniter扩展核心类实例详解
2016/01/20 PHP
php pdo操作数据库示例
2017/03/10 PHP
PHP获取数组中指定的一列实例
2017/12/27 PHP
PHP基于array_unique实现二维数组去重
2020/07/14 PHP
使用自定义setTimeout和setInterval使之可以传递参数和对象参数
2009/04/24 Javascript
js 操作css实现代码
2009/06/11 Javascript
关于jQuery参考实例2.0 用jQuery选择元素
2013/04/07 Javascript
nw.js实现类似微信的聊天软件
2015/03/16 Javascript
JavaScript使用push方法添加一个元素到数组末尾用法实例
2015/04/06 Javascript
jQuery实现仿腾讯微博滑出效果报告每日天气的方法
2015/05/11 Javascript
javascript中JSON对象与JSON字符串相互转换实例
2015/07/11 Javascript
JavaScript电子时钟倒计时
2016/01/09 Javascript
JavaScript仿商城实现图片广告轮播实例代码
2016/02/06 Javascript
最常见的左侧分类菜单栏jQuery实现代码
2016/11/28 Javascript
JavaScript原型对象原理与应用分析
2018/12/27 Javascript
小程序自定义单页面、全局导航栏的实现代码
2019/03/15 Javascript
Vue父子传递实例讲解
2020/02/14 Javascript
Node.js文本文件BOM头的去除方法
2020/11/22 Javascript
python getopt 参数处理小示例
2009/06/09 Python
python创建线程示例
2014/05/06 Python
Python生成pdf文件的方法
2014/08/04 Python
深入解析Python中的list列表及其切片和迭代操作
2016/03/13 Python
Pycharm学习教程(3) 代码运行调试
2017/05/03 Python
tensorflow创建变量以及根据名称查找变量
2018/03/10 Python
对python numpy.array插入一行或一列的方法详解
2019/01/29 Python
Python datetime模块使用方法小结
2020/06/18 Python
python中delattr删除对象方法的代码分析
2020/12/15 Python
计算机应用与科学个人的自我评价
2013/11/15 职场文书
有子女的离婚协议书怎么写(范本)
2014/09/29 职场文书
杭白菊导游词
2015/02/10 职场文书
2015年检察院个人工作总结
2015/05/20 职场文书
大学宣传委员竞选稿
2015/11/19 职场文书
详解MySQL集群搭建
2021/05/26 MySQL
redis实现共同好友的思路详解
2021/05/26 Redis