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获取操作系统信息实例
Sep 02 Python
如何在sae中设置django,让sae的工作环境跟本地python环境一致
Nov 21 Python
python之PyQt按钮右键菜单功能的实现代码
Aug 17 Python
python随机模块random使用方法详解
Feb 14 Python
tensorflow 实现数据类型转换
Feb 17 Python
Python小白垃圾回收机制入门
Jun 09 Python
Keras框架中的epoch、bacth、batch size、iteration使用介绍
Jun 10 Python
python适合做数据挖掘吗
Jun 16 Python
简单的命令查看安装的python版本号
Aug 28 Python
python爬虫工具例举说明
Nov 30 Python
如何使用Python对NetCDF数据做空间相关分析
Apr 21 Python
python人工智能human learn绘图可创建机器学习模型
Nov 23 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
收听短波不可能有声音清晰的品质吗
2021/03/01 无线电
php_xmlhttp 乱码问题解决方法
2009/08/07 PHP
为PHP5.4开启Zend OPCode缓存
2014/12/26 PHP
试用php中oci8扩展
2015/06/18 PHP
在IIS下安装PHP扩展的方法(超简单)
2017/04/10 PHP
理清PHP在Linxu下执行时的文件权限方法
2017/06/07 PHP
stripos函数知识点实例分享
2019/02/11 PHP
WebGame《逆转裁判》完整版 代码下载(1月24日更新)
2007/01/29 Javascript
js实现多图左右切换功能
2016/08/04 Javascript
基于angular-utils-ui-breadcrumbs使用心得(分享)
2017/11/03 Javascript
微信小程序实现MUI数字输入框效果
2018/01/31 Javascript
JS实现的base64加密解密操作示例
2018/04/18 Javascript
vant IndexBar实现的城市列表的示例代码
2019/11/20 Javascript
javascript 模块依赖管理的本质深入详解
2020/04/30 Javascript
如何搜索查找并解决Django相关的问题
2014/06/30 Python
python基于windows平台锁定键盘输入的方法
2015/03/05 Python
python实现黑客字幕雨效果
2018/06/21 Python
详解Python发送email的三种方式
2018/10/18 Python
Python 类方法和实例方法(@classmethod),静态方法(@staticmethod)原理与用法分析
2019/09/20 Python
Selenium之模拟登录铁路12306的示例代码
2020/07/31 Python
详解pycharm连接远程linux服务器的虚拟环境的方法
2020/11/13 Python
使用layui框架实现点击左侧导航切换右侧内容且右侧选项卡跟随变化的效果
2020/11/10 HTML / CSS
MONNIER Frères英国官网:源自巴黎女士奢侈品配饰电商平台
2018/12/06 全球购物
Pandora西班牙官方商店:PandoraShop.es
2020/10/05 全球购物
Java语言程序设计测试题选择题部分
2014/04/03 面试题
初中三年学生的学习自我评价
2013/11/13 职场文书
大专生自荐书范文
2014/06/22 职场文书
十佳少先队员演讲稿
2014/09/12 职场文书
销售员态度差检讨书
2014/10/26 职场文书
股份转让协议书范本
2015/01/27 职场文书
工作态度怎么写
2015/06/25 职场文书
2016年第二十届“母亲节暨幸福工程救助贫困母亲活动日”活动总结
2016/04/06 职场文书
redis 限制内存使用大小的实现
2021/05/08 Redis
html+css实现环绕倒影加载特效
2021/07/07 HTML / CSS
html5 录制mp3音频支持采样率和比特率设置
2021/07/15 Javascript
css3手动实现pc端横向滚动
2022/06/21 HTML / CSS