Python3.5实现的三级菜单功能示例


Posted in Python onMarch 25, 2019

本文实例讲述了Python3.5实现的三级菜单功能。分享给大家供大家参考,具体如下:

程序:三级菜单

要求:

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

具体代码:

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:ZhengzhengLiu
Province_Data = {
  "北京市":{
    "朝阳区":{
      "南磨房地区":["东郊社区","平乐园社区"],
      "高碑店地区":["兴隆家园社区","大黄庄社区"],
      "将台地区":["丽都社区","房里苑社区"]
    },
    "海淀区":{
      "万寿路街道":["",""],
      "羊坊店街道":["",""],
      "八里庄街道":["",""]
    },
    "怀柔区":{
      "怀柔镇":["",""],
      "雁栖镇":["",""],
      "城庙镇":["",""]
    }
  },
  "天津市":{
    "和平区":{
      "劝业场街道":["",""],
      "小白楼街道":["",""],
      "五大道街道":["",""]
    },
    "南开区":{
      "华苑街道":["",""],
      "长虹街道":["",""],
      "鼓楼街道":["",""]
    },
    "河西区":{
      "桃园街道":["",""],
      "马场街道":["",""],
      "大营门街道":["",""]
    }
  },
  "河北省":{
    "石家庄市":{
      "长安区":["",""],
      "桥西区":["",""],
      "新华区":["",""]
    },
    "廊坊市":{
      "安次区":["",""],
      "广阳区":["",""],
      "西小区":["",""]
    },
    "唐山市":{
      "路南区":["",""],
      "路北区":["",""],
      "古冶区":["",""]
    }
  },
  "山东省":{
    "青岛市":{
      "市南区":["",""],
      "市北区":["",""],
      "即墨市":["",""]
    },
    "济南市":{
      "历下区":["",""],
      "市中区":["",""],
      "槐荫区":["",""]
    },
    "烟台市":{
      "福山区":["",""],
      "莱山区":["",""],
      "牟平区":["",""]
    }
  }
}
exit_flag = False  #退出标志符
while not exit_flag:
  for i in Province_Data:
    print(i)
  user_choice = input("Please choose the province...")
  if user_choice in Province_Data:
    while not exit_flag:
      for j in Province_Data[user_choice]:
        print('\t',j)
      user_choice1 = input("Please choose the city...")
      if user_choice1 in Province_Data[user_choice]:
        while not exit_flag:
          for k in Province_Data[user_choice][user_choice1]:
            print('\t\t',k)
          user_choice2 = input("Please choose the communitiy...")
          if user_choice2 in Province_Data[user_choice][user_choice1]:
            while not exit_flag:
              for l in Province_Data[user_choice][user_choice1][user_choice2]:
                print('\t\t\t',l)
              user_choice3 = input("The last choose,please enter 'b' to back...")
              if user_choice3 == 'b':
                break
              elif user_choice3 == 'q':
                exit_flag = True
          if user_choice2 == 'b':
            break
          elif user_choice2 == 'q':
            exit_flag = True
      if user_choice1 == 'b':
        break
      elif user_choice1 == 'q':
        exit_flag = True
#运行结果:
'''
山东省
河北省
天津市
北京市
Please choose the province...北京市
 朝阳区
 怀柔区
 海淀区
Please choose the city...朝阳区
  南磨房地区
  将台地区
  高碑店地区
Please choose the communitiy...将台地区
  丽都社区
  房里苑社区
The last choose,please enter 'b' to back...b
  南磨房地区
  将台地区
  高碑店地区
Please choose the communitiy...b
 朝阳区
 怀柔区
 海淀区
Please choose the city...b
山东省
河北省
天津市
北京市
Please choose the province...北京市
 朝阳区
 怀柔区
 海淀区
Please choose the city...q
Process finished with exit code 0
'''
Python 相关文章推荐
python海龟绘图实例教程
Jul 24 Python
Python编写登陆接口的方法
Jul 10 Python
python中如何使用正则表达式的集合字符示例
Oct 09 Python
Python面向对象基础入门之编码细节与注意事项
Dec 11 Python
python web自制框架之接受url传递过来的参数实例
Dec 17 Python
Python中的Socket 与 ScoketServer 通信及遇到问题解决方法
Apr 01 Python
Django处理Ajax发送的Get请求代码详解
Jul 29 Python
Django--权限Permissions的例子
Aug 28 Python
Python3自定义json逐层解析器代码
May 11 Python
浅谈keras通过model.fit_generator训练模型(节省内存)
Jun 17 Python
python3 使用ssh隧道连接mysql的操作
Dec 05 Python
python flappy bird小游戏分步实现流程
Feb 15 Python
使用Django简单编写一个XSS平台的方法步骤
Mar 25 #Python
Python for循环与range函数的使用详解
Mar 23 #Python
详解Python读取yaml文件多层菜单
Mar 23 #Python
详解Python数据分析--Pandas知识点
Mar 23 #Python
详解Python基础random模块随机数的生成
Mar 23 #Python
Python基本数据结构与用法详解【列表、元组、集合、字典】
Mar 23 #Python
Django异步任务之Celery的基本使用
Mar 23 #Python
You might like
编写漂亮的代码 - 将后台程序与前端程序分开
2008/04/23 PHP
PHP设置头信息及取得返回头信息的方法
2016/01/25 PHP
JavaScript 选中文字并响应获取的实现代码
2011/08/28 Javascript
js 控制下拉菜单刷新的方法
2013/03/03 Javascript
IE与FF下javascript获取网页及窗口大小的区别详解
2014/01/14 Javascript
详解JavaScript ES6中的Generator
2015/07/28 Javascript
jQuery简单实现title提示效果示例
2016/08/01 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
js canvas实现擦除效果示例代码
2017/04/26 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
2017/07/19 Javascript
利用vue + element实现表格分页和前端搜索的方法
2017/12/25 Javascript
JS字符串常用操作方法实例小结
2019/06/24 Javascript
vue-element-admin 菜单标签失效的解决方式
2019/11/12 Javascript
Node Express用法详解【安装、使用、路由、中间件、模板引擎等】
2020/05/13 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
2020/07/24 Javascript
树莓派中python获取GY-85九轴模块信息示例
2013/12/05 Python
通过C++学习Python
2015/01/20 Python
python轻松实现代码编码格式转换
2015/03/26 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
Python多线程threading模块用法实例分析
2019/05/22 Python
django框架模型层功能、组成与用法分析
2019/07/30 Python
Python队列RabbitMQ 使用方法实例记录
2019/08/05 Python
简述python&pytorch 随机种子的实现
2020/10/07 Python
通过python-pptx模块操作ppt文件的方法
2020/12/26 Python
详解Python调用系统命令的六种方法
2021/01/28 Python
分享CSS3中必须要知道的10个顶级命令
2012/04/26 HTML / CSS
使用jquery实现HTML5响应式导航菜单教程
2014/04/02 HTML / CSS
Html5页面点击遮罩层背景关闭遮罩层
2020/11/30 HTML / CSS
AE美国鹰日本官方网站: American Eagle Outfitters
2016/12/10 全球购物
索尼巴西商店:Sony巴西
2019/06/21 全球购物
物业管理专业个人的自我评价
2013/11/19 职场文书
公务员政审个人鉴定
2014/02/25 职场文书
幼儿园毕业寄语
2014/04/03 职场文书
舞蹈教育学专业求职信
2014/06/29 职场文书
建筑工程技术专业求职信
2014/07/16 职场文书
党支部考察意见范文
2015/06/02 职场文书