Day1 三级目录
d_city = {
"河南" : {"郑州" : ["二七区","中原区","回族管城区","惠济区","金水区","上街区"],
"信阳" : ["浉河区","平桥区","羊山新区","南湾区","上天梯区","鸡公山区"]},
"广东":{"广州":["越秀","海珠","荔湾","天河","白云","黄埔","南沙"],
"深圳":["罗湖区","龙岗区","福田区","南山区","盐田区","宝安区","大鹏新区"]}

d_city = {
"河南" : {"郑州" : ["二七区","中原区","回族管城区","惠济区","金水区","上街区"],
"信阳" : ["浉河区","平桥区","羊山新区","南湾区","上天梯区","鸡公山区"]},
"广东":{"广州":["越秀","海珠","荔湾","天河","白云","黄埔","南沙"],
"深圳":["罗湖区","龙岗区","福田区","南山区","盐田区","宝安区","大鹏新区"]}
}
while True:#保证 break 到这一级可以循环下去
for index, key in enumerate(d_city.keys()):
print(index, key)
print('******************\n')
value_f = input("请选择区域(退出请按q,返回请按b):").strip() #first 选择,选择第一个区域
if value_f.isdigit():
value_f = int(value_f)#保证输入为数字
list_a = list(d_city.keys())[value_f]
while True:#选择正确的区域编号后,进入下一级循环
for index, key in enumerate(d_city[list_a]):#遍历序列中的元素以及它们的下标
print(index, key)#显示遍历结果
value_s = input("请选择地区(退出请按q,返回请按b):").strip()
if value_s.isdigit():
value_s = int(value_s)
list_b = list(d_city[list_a].keys())[value_s]
while True:
for index, key in enumerate(d_city[list_a][list_b]):
print(key)
value_d = input("退出请按q,返回请按b:").strip()
if value_d == 'q':
exit()
elif value_d == 'b':
break
else:print("请输入指定值")
elif value_s == 'q':
exit()
elif value_s == 'b':
break
elif value_f == 'q':
exit()
elif value_f == 'b':
break
#最后几行保证每一级都可以返回上一级,以及结束循环
Day1 三级目录的更多相关文章
- 用python选择及显示三级目录,可返回上层目录以及随时跳出。
# -*- coding: utf-8 -*-"""Created on Fri Jul 29 09:43:38 2016 @author: yinggang" ...
- python之三级目录
#python之三级目录低配版 menu = { '北京':{ '朝阳':{ '国贸':{ 'CICC':{ }, 'HP':{ }, '渣打银行':{ }, 'CCTV':{ }, }, '望京': ...
- python编辑三级目录
一.需求分析 三级目录要能够实现以下要求: 显示根目录,任何子目录中都可以通过输入b字符来返回根目录 任何子目录中都可以通过输入q字符来返回上一级目录 主目录进入子目录后,系统能够打印子目录,根据指打 ...
- Python_三级目录
程序要求: 1. 使用字典存储 1. 可以一层一层的进入到所有层2. 可以在每层返回上一层3. 可以在任意层退出 三级目录写了两个版本,第一个版本是刚看完字典写出来的,代码很多冗余,很多重复. men ...
- java查询三级树(三级目录)
背景: 三级树实现效果 这里只介绍,查询数据库,构建三级目录的后端业务逻辑 1.创建查询类(对应数据库需要查出的字段) @Data @AllArgsConstructor @NoArgsConstru ...
- Python_实现三级目录展示
要求: 1.三级菜单 2.可依次选择进入各子菜单,选择序号进入目录 3.输入b返回上级目录,q退出更改目录 代码实现: #!/bin/env python #!--*--coding:utf-8 -- ...
- 更新上篇文章 调用三级目录文章内容 dede频道页实现三级栏目嵌套调用文章
原文:http://www.wuaie.com/?p=66 源码改写 $typeid = $row['id']; if((class_exists('PartView'))) { $pv = new ...
- 【Java EE 学习 22 上】【文件上传】【目录打散】【文件重命名】
1.文件上传概述 (1)使用<input type="file">的方式来声明一个文件域. (2)表单提交方式一定要是post方式才行 (3)表单属性enctype 默 ...
- Tomcat目录映射设置
方法一: \conf\server.xml <Host>内插入<Context path="虚拟目录" docBase="文件目录" /> ...
随机推荐
- .Net Framework 4.0 内部排序探索
简介 一时好奇心起,想一窥.Net Framework 4.0内部究竟是使用何种算法排序.以前听人说Framework内部是使用的快速排序,但究竟耳听为虚,眼见为实.主要通过JetBrains dot ...
- HTTP请求与响应方式
HTTP请求格式 当浏览器向Web服务器发出请求时,它向服务器传递了一个数据块,也就是请求信息,HTTP请求信息由3部分组成: l 请求方法URI协议/版本 l 请求头(Request Hea ...
- IO流的练习3 —— 复制多级文件夹下的指定文件并改名
需求:复制指定目录下的指定文件,并修改后缀名. 指定的文件是:.java文件. 指定的后缀名是:.jad 数据源所在文件夹:C:\Users\Administrator\Desktop\记录 目的地所 ...
- 使用clone( )和Cloneable接口
由Object类定义的绝大部分方法在本书其他部分讨论.而一个特别值得关注的方法是clone( ).clone( )方法创建调用它的对象的一个复制副本.只有那些实现Cloneable接口的类能被复制. ...
- 十一、常用的NSArray和NSMutableArray方法
1.概念 用来存储OBJ对象的有序列表,它是不可变的 2.创建常用方法 + (id)array + (id)arrayWithObect:(id)anObject + (id)arrayWithObe ...
- C# Thread.Join()用法的理解 转
指在一线程里面调用另一线程join方法时,表示将本线程阻塞直至另一线程终止时再执行 比如 1using System; 2 3namespace TestThreadJoin 4{ 5 class P ...
- 05JavaIO详解_仿照IO源码自己去实现一个IO流(为了加深印象,本身没有价值)
版本会越来越难: 版本1:只写一个read方法 package com.guigu.shen.InputStream; import java.io.IOException; import java. ...
- MAC中设置android adb环境变量
1.找到android sdk的本地路径, adb命令在platform-tool下面,记为XXXX 我的路径是(/Applications/eclipse/android-sdk-mac_x86/p ...
- HTML5新特性及详解
什么是HTML5:HTML5 是下一代的HTML,将成为 HTML.XHTML 以及 HTML DOM 的新标准. 为 HTML5 建立的一些规则: 新特性应该基于 HTML.CSS.DOM 以及 J ...
- Linux 进程与线程二(等待--分离--取消线程)
int pthread_join(pthread_t thr,void **thr_return); pthread_join函数用于挂起当前线程,直至th指定的线程终止为止. 如果另一个线程返回值不 ...