#任务:
#显示3级菜单
#1级菜单#显示 3个城市 => 1北京 2上海 3广州
#2级菜单 #显示 选择1 北京 => B1 B2 B3
#2级菜单 #显示 选择2 上海 => S1 S2 S3
#2级菜单 #显示 选择3 广州 => G1 G2 G3 #3级菜单 #显示 选择B1 => b1_1 b1_2 b1_3
#3级菜单 #显示 选择B2 => b2_1 b2_2 b2_3
#3级菜单 #显示 选择B3 => b3_1 b3_2 b3_3 #3级菜单 #显示 选择S1 => s1_1 s1_2 s1_3
#3级菜单 #显示 选择S2 => s2_1 s2_2 s2_3
#3级菜单 #显示 选择S3 => s3_1 s3_2 s3_3 #3级菜单 #显示 选择G1 => g1_1 g1_2 g1_3
#3级菜单 #显示 选择G2 => g2_1 g2_2 g2_3
#3级菜单 #显示 选择G3 => g3_1 g3_2 g3_3 #选择Q键 退出程序, 选择R键 返回上一级菜单 curPage = 0; #当前页数
minPage = 0; #最小页数
maxPage = 3; #最大页数
showVal = "1.北京 2.上海 3.广州 R.上一页 Q.退出"
selectVal = "北京" while True:
print("-----------------------------------")
print("|"+showVal+"|") #显示具体内容
print("-----------------------------------")
userVal = input("input your select: ") #用户输入的值 if userVal == "Q" or userVal == "q":
break if userVal == "":
if curPage == 0:
selectVal = "北京"
showVal = " 1.B1 2.B2 3.B3 R.上一页 Q.退出 "
curPage += 1;
elif curPage == 1:
if selectVal == "北京":
showVal = " b1_1 b1_2 b1_3 "
elif selectVal == "上海":
showVal = " s1_1 s1_2 s1_3 "
elif selectVal == "广州":
showVal = " g1_1 g1_2 g1_3 "
curPage += 1;
elif userVal == "":
if curPage == 0:
selectVal = "上海"
showVal = " 1.S1 2.S2 3.S3 R.上一页 Q.退出 "
curPage += 1;
elif curPage == 1:
if selectVal == "北京":
showVal = " b2_1 b2_2 b2_3 "
elif selectVal == "上海":
showVal = " s2_1 s2_2 s2_3 "
elif selectVal == "广州":
showVal = " g2_1 g2_2 g2_3 "
curPage += 1;
elif userVal == "":
if curPage == 0:
selectVal = "广州"
showVal = " 1.G1 2.G2 3.G3 R.上一页 Q.退出 "
curPage += 1;
elif curPage == 1:
if selectVal == "北京":
showVal = " b3_1 b3_2 b3_3 "
elif selectVal == "上海":
showVal = " s3_1 s3_2 s3_3 "
elif selectVal == "广州":
showVal = " g3_1 g3_2 g3_3 "
curPage += 1;
elif userVal == "r" or userVal == "R":
if curPage <= 1:
showVal = "1.北京 2.上海 3.广州 R.上一页 Q.退出"
curPage = 0
else:
if selectVal == "北京":
showVal = " 1.B1 2.B2 3.B3 "
curPage -= 1;
elif selectVal == "上海":
showVal = " 1.S1 2.S2 3.S3 "
curPage -= 1;
elif selectVal == "广州":
showVal = " 1.G1 2.G2 3.G3 "
curPage -= 1;
else:
print("->没有找到对应的城市,请重新输入<-")
print("GAME OVER")

python-实现3级菜单(作业课)的更多相关文章

  1. 第2章 Python基础-字符编码&数据类型 购物车&多级菜单 作业

    作业 一.三级菜单 数据结构: menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, ...

  2. python之tkinter使用-单级菜单

    # 菜单功能说明:单级菜单 import tkinter as tk root = tk.Tk() root.title('菜单选择') root.geometry('200x60') # 设置窗口大 ...

  3. python day1 之三级菜单的正确姿势

    看了几个同学有关三级菜单的实现,都是通过一级一级输出,是较为过程的实现.另外如果菜单(树形结构)更多级这样处理起来就比较麻烦了. 可以使用python强大的列表和字典,实现的更优美或简洁一些: 注:复 ...

  4. 集大软件工程15级个人作业Week2

    集大软件工程15级个人作业Week2 快速通读教材<构建之法>,并参照提问模板,提出5个问题. 在每个问题后面,请说明哪一章节的什么内容引起了你的提问,提供一些上下文 列出一些事例或资料, ...

  5. 集大软件工程15级个人作业Week1

    集大软件工程15级个人作业Week1 孙志威 201521123077 博客园主页 码云地址 阅读参考材料,并回答下面几个问题 (1)回想一下你初入大学时对网络工程专业的畅想 当初你是如何做出选择网络 ...

  6. python练习_三级菜单

    python练习_三级菜单 需求: 做一个地区查询三级菜单,输入一级能够打印下一级 在第三级个第二级输入e可以返回上一级 在任意一级输入q则退出程序 以下代码实现的功能与思路: 功能: (1)通过In ...

  7. 【Python】:简单爬虫作业

    使用Python编写的图片爬虫作业: #coding=utf-8 import urllib import re def getPage(url): #urllib.urlopen(url[, dat ...

  8. (转)asp.net(C#)手记之Repeater与两级菜单

    先来张图片说明下我们要实现的菜单: 这个菜单只实现了2级哈. 我采用的方法是嵌套2个Repeater. 先看下数据库中的表结构: 数据: 上代码: aspx: <asp:Repeater ID= ...

  9. MFC 对话框中动态创建N级菜单以及响应事件

    创建一个基于对话框的工程,工程名为CreateMenu 为该对话框增加一个文件菜单项和测试菜单项,如下图所示   测试菜单项至少要有一个子菜单项 在对话框属性中关联该菜单 在resource.h中增加 ...

随机推荐

  1. Docker 学习新手笔记:从入门到放弃

    本文记录的是作为一个新手,从了解 Docker 是什么.Docker 技术包含哪些概念到上手使用.安装以及发布 Docker 镜像的整个过程.作者在学习过程中参阅了诸多文档和教程,在此一并感谢,与此同 ...

  2. 洛谷P1966 【火柴排队】

    题解 P1966 [火柴排队] 说明: 在数学中有个公式: (a1-b1)^2+(a2-b2)^2<(a2-b1)^2+(a1-b2)^2 (你可以自己试着证一下) 两列火柴对应的两根火柴在各列 ...

  3. 已经在Git Server服务器上导入了SSH公钥,可用TortoiseGit同步代码时,还是提示输入密码?

    GitHub虽好,但毕竟在国内访问不是很稳定,速度也不快,而且推送到上面的源码等资料必须公开,除非你给他交了保护费:所以有条件的话,建议大家搭建自己的Git Server.本地和局域网服务器都好,不信 ...

  4. linux虚拟机黑屏解决

    最近电脑上的虚拟机点击开机就一直黑屏,几次了,挂起时能够看到显示,但是开机就黑屏. 百度了之后找到了解决方案:(我是第一种方案就解决了)(据说可能是wegame的锅,用来打lol的....) 方法1: ...

  5. TypeScript 类型定义文件(*.d.ts)自动生成工具

    在开发ts时,有时会遇到没有d.ts文件的库,同时在老项目迁移到ts项目时也会遇到一些文件需要自己编写声明文件,但是在需要的声明文件比较多的情况,就需要自动生产声明文件.用过几个库.今天简单记录一下. ...

  6. 什么是BFC

    对css有了解的朋友肯定都知道盒式模型这个概念,对一个元素设置css,首先需要知道这个元素是block还是inline类型.而BFC就是用来格式化块级盒子,同样管理inline类型的盒子还有IFC,以 ...

  7. PTA L2-4 关于堆的判断

    先上题面 链接 https://pintia.cn/problem-sets/994805046380707840/problems/994805064676261888 首先,题目描述的很清楚,这是 ...

  8. Java基于opencv—透视变换矫正图像

    很多时候我们拍摄的照片都会产生一点畸变的,就像下面的这张图 虽然不是很明显,但还是有一点畸变的,而我们要做的就是把它变成下面的这张图 效果看起来并不是很好,主要是四个顶点找的不准确,会有一些偏差,而且 ...

  9. idea搭建spring的demo

    这是本人在回顾知识点时记录的内容,如有错误,谢谢指正! 1.先来介绍下spring是什么? spring是一个轻量级的开源框架,是一个大型的容器,也是一个很好的“管家”,可以接管web层,业务层,da ...

  10. hdu 4506 快速幂

    小明自从告别了ACM/ICPC之后,就开始潜心研究数学问题了,一则可以为接下来的考研做准备,再者可以借此机会帮助一些同学,尤其是漂亮的师妹.这不,班里唯一的女生又拿一道数学题来请教小明,小明当然很高兴 ...