Python实例---三级菜单的实现[high]
# version: python3.2.5
# author: ‘FTL1012‘
# time: 2017/12/7 09:16
menu = {
'陕西': {
'西安': {
'未名区': ['国美', '苏宁', '京东'],
'无名区': ['百度', '360 ', '搜狗'],
'优雅区': ['腾讯', '默默', '订订']
},
'宝鸡': {
'进队区': ['word', 'excel', 'ppt'],
'挖第区': ['华为', '锤子', '小米'],
'阿克区': ['adidas', 'unique', 'masterbrown']
},
'汉中': {
'呵呵区': ['流浪', 'excel', 'ppt'],
'幻化区': ['猥琐', '发育', '别浪'],
'三只区': ['后裔', '李白', '杜甫']
},
},
'山东': {
'山东市': {
'惠普区': ['华夏', '建设', '农行']
}
},
'湖南': {
'长沙': {
'豆腐区': ['键盘', '鼠标', '显示器']
}
}
} current_layer = menu # 用于动态循环
parent_lists = [] # 保存父级,最后一个元素永远都是父亲级别
while True:
if len(current_layer) != 0:
for k in current_layer:
print(k)
else:
print("no")
choice = input("请选择:").strip()
if 0 == len(choice):
continue
if choice in current_layer:
# parent_layer = current_layer
parent_lists.append(current_layer)
current_layer = current_layer[choice]
elif choice == 'b':
print("返回上一级目录...")
# for k in parent_layer:
# print(k)
# current_layer = parent_layer
if parent_lists:
current_layer = parent_lists.pop() # pop会取出并删除最后一个元素
else:
print("已经到达首页啦...")
else:
print("输入错误...")
Python实例---三级菜单的实现[high]的更多相关文章
- Python实例---三级菜单的实现[low]
# version: python3.2.5 # author: 'FTL1012' # time: 2017/12/7 09:16 menu = { '陕西': { '西安': { '未名区': [ ...
- python打怪之路【第三篇】:利用Python实现三级菜单
程序: 利用Python实现三级菜单 要求: 打印省.市.县三级菜单 可返回上一级 可随时退出程序 coding: menu = { '北京':{ '朝阳':{ '国贸':{ 'CICC':{}, ' ...
- python之三级菜单
python之三级菜单 要求: 1. 运行程序输出第一级菜单 2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单 3. 菜单数据保存在文件中 4. 让用户选择是否要退出 5. 有返回上一级菜单的功 ...
- 【python】——三级菜单
作业需求: 打印三级菜单 可返回上一级 可随时退出程序 #!/usr/bin/env python # -*- coding:utf-8 -*- #Author: __Json.Zzgx__ menu ...
- Python学习-------------------三级菜单简单版
题目: 多级菜单 1.三级菜单 2.可依次选择进入的各子菜单 3.所需新知识点:列表.字典 ReadMe: 这个做循环,比较绕脑子 点开运行即可 Min ...
- python作业三级菜单day1(第一周)
一.作业需求: 1. 运行程序输出第一级菜单 2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单 3. 菜单数据保存在文件中 4. 让用户选择是否要退出 5. 有返回上一级菜单的功能 二三级菜单文 ...
- python实现三级菜单源代码
8月4号早晨天气晴,继续学习‘Alex’的python视频,写了用字典实现三级菜单的代码,都是循环和判断比较lower,废话不多说直接贴码: #!/user/bin/env python #-*-co ...
- python 实现三级菜单
要求: 可选择进入各级子菜单 在各级菜单下可以选择退出 在子菜单下可以返回上一级菜单 Readme: 运行程序,输入菜单选项,进入对应的子菜单 # Joe Young data = { '山东':{ ...
- python实现三级菜单间的前后跳转
#录入菜单def createMenu(): Menu = {} provinces = ["陕西","四川","江苏"] sh ...
随机推荐
- emacs26.1 ppa
sudo add-apt-repository ppa:kelleyk/emacssudo apt updatesudo apt install emacs26
- C#中判断系统的架构(32位,还是64位)
一种很简单的方法就是根据IntPtr类型的Size属性来判断, //IntPtr.Size在64位为8,在32位为4 public static Boolean Is64Bit() { ) retur ...
- 我爱Markdown (3)
继续Markdown的常见语法, 本文将介绍: 07 - Links 链接 08 - Images 图片 09 - Blockquotes 块引用 10 - Backslash Escapes 显示保 ...
- JavaScript对象——原型与原型链
原型与原型链 一. 普通对象与函数对象 JavaScript 中,万物皆对象!但对象也是有区别的.分为普通对象和函数对象,Object .Function 是 JS 自带的函数对象.下面举例说明 va ...
- Implicit super constructor xx() is undefined for default constructor. Must define an explicit constructor
错误:Implicit super constructor xx() is undefined for default constructor. Must define an explicit c ...
- Spring发送基于freemarker模板的邮件
在项目开发过程中,我们经常会遇到需要发送邮件的场景,比如:用户验证邮箱的时候,有活动通知或者提醒通知的时候……有些时候我们可能只需要发送一些简单文本内容即可,但是大多数情况下我们更希望邮件的内容是丰富 ...
- [javaSE] 集合框架(迭代器)
当我们创建一个集合以后,可以直接使用system.out.println()来打印这个集合,但是,我们需要可以对每个元素进行操作,所以,这里需要使用迭代器来遍历集合 迭代器其实就是集合取出元素的方式 ...
- 十、获取异步线程返回值Callable
一.简介 异步线程的实现接口Runnable是无法获得返回结果的,而另一个接口Callable可以返回结果.并通过如Future等方式来获取异步结果. 二.代码示例 import java.util. ...
- groovy运算符
import java.util.regex.Matcher /** * Created by Jxy on 2018/12/20 10:29 * groovy运算符 */ /*class opera ...
- 【SSH网上商城项目实战18】过滤器实现购物登录功能的判断
转自:https://blog.csdn.net/eson_15/article/details/51425010 上一节我们做完了购物车的基本操作,但是有个问题是:当用户点击结算时,我们应该做一个登 ...