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

yipeiwu_com6年前Python基础

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

三级菜单_要求:

1. 运行程序输出第一级菜单
2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单
3. 菜单数据保存在文件中
4. 让用户选择是否要退出
5. 有返回上一级菜单的功能

执行代码:

#!/usr/bin/env python3
# Author:Robert
# --*-- coding: utf-8 --*--
data = {
  "北京":{
    "东城区":{
      "安定门":["国子监大街","孔庙","钟楼"],
      "建国门":["Jinbaojie","长安街","西街"],
      "朝阳门":["东四南大街","朝阳门内大街","孚王府"]
      },
    "朝阳区":{
      "和平街":["胜古庄社区","樱花社区","和平东街社区"],
      "八里庄":["慈寿寺塔","定慧寺"],
      "三里屯":["798艺术区","北京工人体育馆"]
    },
    "海淀":{}
  },
  '山东':{
    "德州":{},
    "青岛":{},
    "济南":{}
  },
  '广东':{
    "东莞":{},
    "常熟":{},
    "佛山":{}
  }
}
exit_flag = False
while not exit_flag:
  for i in data:
    print(i)
  choice = input("选择进入-->:")
  if choice in data:
    while not exit_flag:
      for i2 in data[choice]:
        print("\t",i2)
      choice2 = input("选择进入2-->:")
      if choice2 in data[choice]:
        while not exit_flag:
          for i3 in data[choice][choice2]:
            print("\t\t",i3)
          choice3 = input("选择进入3-->:")
          if choice3 in data[choice][choice2]:
            for i4 in data[choice][choice2][choice3]:
              print("\t\t",i4)
            choice4 = input("最后一层,按b返回-->:")
            if choice4 == "b":
              pass
            elif choice4 == "q":
              exit_flag = True
          if choice3 == "b":
            break
          elif choice4 == "q":
            exit_flag = True
      if choice2 == "b":
        break
      elif choice4 == "q":
        exit_flag = True

运行效果:

PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

在线json压缩/转义工具:
http://tools.jb51.net/code/json_yasuo_trans

更多Python相关内容感兴趣的读者可查看本站专题:《Python操作json技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python基于聚类算法实现密度聚类(DBSCAN)计算【测试可用】

Python基于聚类算法实现密度聚类(DBSCAN)计算【测试可用】

本文实例讲述了Python基于聚类算法实现密度聚类(DBSCAN)计算。分享给大家供大家参考,具体如下: 算法思想 基于密度的聚类算法从样本密度的角度考察样本之间的可连接性,并基于可连接...

python3读取MySQL-Front的MYSQL密码

前言 同样的套路又来了,继续尝试从配置文件中读取敏感的信息,这次轮到的是MySQL-Front。 MySQL-Front就一款开源的mysql管理工具,官方网站http://www.my...

python 使用opencv 把视频分割成图片示例

我就废话不多说了,直接上代码吧! #--coding:utf-8-- import cv2 #图像路径名字错误不提示 im=cv2.imread("timg.jpg",cv2...

Python基于sklearn库的分类算法简单应用示例

本文实例讲述了Python基于sklearn库的分类算法简单应用。分享给大家供大家参考,具体如下: scikit-learn已经包含在Anaconda中。也可以在官方下载源码包进行安装。...

Python读取stdin方法实例

Python读取stdin方法实例

Python中常用到的两种标准化输入方式:分别sys.stdin和input,两者使用方式大致相同,但是总的来说sys.stdin使用方式更加多样化一些,下面就例子说明两者之间的使用差别...