#任务:
#显示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. Intellij IDEA 导入Maven项目

    本人一直使用的eclipse, 但都说IDEA 是java界中最好使用的编辑器 ,所以开始了IDEA的学习,最近使用到了 IDEA 但是,既然编辑器有所差别,所以在使用过程中也难免遇到一些费劲的事情. ...

  2. oracle数据库实例启动与关闭

    区分数据库与实例:实例是指各种内存结构和服务进程,数据库是指基于磁盘存储的数据文件.控制文件.参数文件.日志文件和归档日志文件组成的物里文件集合. 数据库实例启动: startup [nomount ...

  3. Delphi7第三方控件

    控件安装(安装时建议先关闭Delphi) 1.只有一个DCU文件的组件. DCU文件是编译好的单元文件,这样的组件是作者不想把源码公布.一般来说,作者必须说明此组件适合Delphi的哪种版本,如果版本 ...

  4. Java中String类常用方法(字符串中的子字符串的个数)

    重点内容 4种方法: 1.int indexOf(String str)返回第一次出现的指定子字符串在此字符串中的索引. 2.int indexOf(String str, int startInde ...

  5. MVC(Model -View-Controller)实例应用模式

    MVC(Model -View-Controller)实例应用模式 以登录为例: Model:User package com.keith.bean; public class TUser imple ...

  6. 用chrome和anywhere,配合安卓机搭建最简单的移动端页面测试。

    很多时候,我们前端在写移动端页面的时候,虽然目前chrome有调试模式,可以模拟手机的部分效果,但仍有部分效果需要直接在手机上进行页面的调试,今天就在这里推荐一个适合windows+安卓的无需连接局域 ...

  7. 2.ReactJS基础(虚拟DOM,JSX语法)

    将脚手架(create-react-app)创建的todolist项目精简为hello world示例 即,删除自动生成的样式文件.logo.svt.App.test.js.serviceWorker ...

  8. Spark SQL / Catalyst 内部原理 与 RBO

    原创文章,转载请务必将下面这段话置于文章开头处. 本文转发自技术世界,原文链接 http://www.jasongj.com/spark/rbo/ 本文所述内容均基于 2018年9月10日 Spark ...

  9. linux配置服务器

    梳理一下这次配置服务器的思路. 1,挂载磁盘 Java和neigx上传到根目录下,tomcat放在data目录下,数据库新建文件夹也在data下, 2,配置环境变量 3,nginx修改域名 4,数据库 ...

  10. 虚函数表:QT5与VS2015的差异

    问题原自下面一段代码: 初学C++虚函数表时,以下代码在QT和VS(版本如题)编译结果不同. #include <iostream> using namespace std; class ...