PYTHON作业----编写多级菜单
# -*- coding: utf-8 -*-#-*- 2017/07/13 -*-#-*- Create by ChaiMeng#多级菜单 import sys multi_city = {'安徽省':{'合肥市':{'蜀山区':'安徽农业大学'}},'湖北省':{'武汉市':{'东湖区':'武汉大学'}},'河南省':{'开封市':{"龙亭区:河南大学"}}} #添加多级字典(字典的嵌套),以省、市、区、学校为例print("按q返回上一层") #打印提示信息print("按e退出") #打印提示信息 # print(multi_city['安徽省']['合肥市'])# for i in multi_city['安徽省']['合肥市']:# print (i) #以上三行为调试信息,主要确认多级字典(字典的嵌套)的输出 ec = 'q' #预定义变量ex = 'e' #预定义变量first_class_flag = True #定义一级菜单的标志位,后续可以通过该标记为退出多级循环,本例为在一级循环中体现,在二级、三级循环中体现了 while first_class_flag: #定义一级循环 for first_class in multi_city.keys(): #打印多级字典中省级目录 print(first_class) first_class_input = input("请输入省份1>>>: ") #提示用户输入省份 if first_class_input in multi_city.keys(): #判断用户输入的省份是否在改字典的key中 for first_class_province in multi_city[first_class_input].keys(): #如果用户输入的数据在字典的省份中,则打印市区名称 print (first_class_province) second_class_flag = True #定义二级菜单的标志位,后续可以通过改变标志位的布尔值,来退出二级循环 while second_class_flag: #进入二级循环 second_class_input = input("请输入市名2>>>: ") #提示输入市名称 if second_class_input in multi_city[first_class_input].keys(): #判断用户输入的市名是否在改字典的key中 for second_class_city in multi_city[first_class_input][second_class_input].keys(): #如果用户输入的数据在字典的市名中,则打印区名称 print(second_class_city) third_class_flag = True #定义三级菜单的标志位,后续可以通过改变标志位的布尔值,来退出三级循环 while third_class_flag: #进入三级循环 third_class_input = input("请输入区名3>>>: ") #提示用户输入区名 if third_class_input in multi_city[first_class_input][second_class_input].keys(): #判断用户输入的区名是否在改字典的key中 third_class_zone = multi_city[first_class_input][second_class_input][third_class_input] #如果用户输入的数据在字典的区名中,则打印学校名称 print(third_class_zone) elif third_class_input == ec: #如果用户输入的是q,返回到二级菜单 print('正在返回上一级菜单...... ') third_class_flag = False #通过改变三级菜单的标志位,来退出三级循环 elif third_class_input == ex: #如果用户输入的是e,就退出整个程序 sys.exit('退出中……ing') else: #其他情况提示输入错误,请重新输入 print("输入错误,请重新输入: ") elif second_class_input == ec: #如果用户输入的是q,返回到一级菜单 print('正在返回上一级菜单...... ') second_class_flag = False #通过改变三级菜单的标志位,来退出二级循环 elif second_class_input == ex: #如果用户输入的是e,就退出整个程序 sys.exit('退出中……ing') else: #其他情况提示输入错误,请重新输入 print("输入错误,请重新输入: ") elif first_class_input == ec: #因为本级菜单是顶级菜单,如果用户输入的是q,可以使用continue,持续在一级循环(顶层菜单) print('已经最顶级菜单,完全退出请输入 e ') continue elif first_class_input == ex: #如果用户输入的是e,就退出整个程序 sys.exit('退出中……ing') else: #其他情况提示输入错误,请重新输入 print("输入错误,请重新输入: ") 有问题需要探讨的可以加QQ:646783224
转载于:https://www.cnblogs.com/xiaohuo2011/p/7201049.html
PYTHON作业----编写多级菜单相关推荐
- 老男孩Day1作业(二):编写多级菜单
要求:编写多级菜单 1.三级菜单 2.可依次进入各子菜单 3.菜单能够回到上一级 4.用到知识点:字典.列表.多层循环.函数 1)编写思路 编写思路参考下面GitHub链接中的流程图 https:// ...
- python编写电子菜单_Python简单实现多级菜单
1 #-*- coding: utf-8 -*- 2 #@Time : 2018-06-01 13:40 3 #@Author : 超人 4 #@Email : huxiaojiu111@gmail. ...
- day1 作业二:多级菜单操作
作业二:多级菜单 (1)三级菜单 (2)可以次选择进入各子菜单 (3)所需新知识点:列表.字典 要求:输入b返回上一层,输入q退出整个程序 思路:三级菜单第一级别是省,第二级别是市,第三级别是县,用户 ...
- day1作业二:多级菜单操作
作业二:多级菜单 (1)三级菜单 (2)可以次选择进入各子菜单 (3)所需新知识点:列表.字典 要求:输入back返回上一层,输入quit退出整个程序 思路: (1)首先定义好三级菜单字典: (2)提 ...
- python基础:多级菜单
#类似于多级菜单中的经典列子---城市的多级菜单#个人更改了组成成分,效果大致不变,总体还是臃肿的,还在练习中,算是基本能实现效果了#---基本功能---#1.用户能根据选择进入菜单#2.用户能返回上 ...
- Python多级菜单
作业2:多级菜单 三级菜单 可依次选择进入各子菜单 所需新知识点:列表.字典 1.流程图 2.登录界面,输入对应索引 #!/usr/bin/env python3 # -*- coding:utf-8 ...
- Python基础-小程序练习(跳出多层循环,购物车,多级菜单,用户登录)
一. 从第3层循环直接跳出所有循环 break_flag = False count = 0 while break_flag == False:print("-第一层")whil ...
- 【shell 练习5】编写简单的多级菜单
一.简单的多级菜单 [root@web129 ~]# cat menu.sh #!/bin/bash #shell菜单演示 function menu() { echo -e `date` cat & ...
- python多级菜单_多级菜单.py
# user/bin/env python3 # -*- coding:utf-8 -*- QI = ['桃山区','新兴区','茄子河'] HA = ['道里区','南岗区','道外区'] DA = ...
最新文章
- 这是一个什么用也没有的模板
- 2021-01-07 Python Opencv转换颜色空间 RGB转为HSV
- Andrew Ng 深度学习笔记-01-week2-课程
- ORACLE同义词源库锁表导致目标库删除操作报ora 02055 02049 02063 06512
- 启动物联网智能校园,NFC技术可变出哪些创新应用?
- 怎么用java ee编程_Java EE应用程序入门 - 编程入门网
- node静态服务器优缺点_使用 Node.js 的优势和劣势都有哪些?
- mac vscode设置中文_VSCode编写latex
- 十个提升网站访问性能的方法
- STM32:Code、RO、RW、Zi含义
- PTA查验身份证 (15 分) 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。
- 英语语法基础(适合入门者)--第一章:词、单词
- CAD怎么快速用计算机加面积,CAD如何利用“命令”快速计算图形面积
- JavaScript简史
- 计算机二级c语言模拟上机,计算机二级C语言上机模拟题
- 有什么好的OCR软件可以实现图片转文字
- Word题注带一级标题,由图一.1变为图1.1
- python是什么意思,Python怎么读
- SPM处理fMRI数据的基本步骤
- 【HTML响应式项目】成人教育官网前端页面(HTML+CSS+JS实现三端适应)
热门文章
- Remove Nth Node From End of List
- 关于JavaScript处理字符串的常见操作
- my batis的理解
- 记一次treegrid checkbox 选择问题
- [PY3]——内置数据结构(4)——字符串格式化(format)
- python中的enumerate函数
- 每个人都有一条属于自己的路,既然来了这个世间,就好好的修炼好就行了!无须担忧...
- NYOJ 311 完全背包
- [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传
- C#数据结构(一)----线性表