Python三级目录展示的实现方法


Posted in Python onSeptember 28, 2016

要求:

1、三级菜单

2、可依次选择进入各子菜单,选择序号进入目录

3、输入b返回上级目录,q退出更改目录

代码实现:

#!/bin/env python
#!--*--coding:utf-8 --*--
# ----*auth:freem*
import sys
#flag=True
#def flas():
#flag=False;
#定义字典包括,国家,州(省),市
dic={'中国':{'河北':('石家庄','邢台','衡水',),'北京':('昌平','海淀','朝阳',),'山西':('太原','大同','运程',)},'美国':{'纽约州':('纽约市','罗彻斯特','水牛城',),'加利福利亚州':('洛杉矶','好莱坞','阿罕布拉',),'宾夕法尼亚州':('费城','伯利恒','华盛顿',)},'澳大利亚':{'维多利亚州':('墨尔本','吉朗','巴里迪',),'西澳大利亚州':('马扎尔','柏斯','费里曼图',),'南澳大利亚州':('阿德莱德','内陆','巴罗莎'),}}
#print(dic['中国']['河北'])
dic_dir={1:"中国",2:"美国",3:"澳大利亚",} #定义国家跟序号的对应关系
dic_dirtt={1:("河北","北京","山西"),2:("纽约州","加利福利亚州","宾夕法尼亚州",),3:("维多利亚州","西澳大利亚州","南澳大利亚州",)} #省(州)对应关系
#dic_dir01={1:"中国",2:"美国",3:"澳大利亚",}
#dic_dir02={1:"中国",2:"美国",3:"澳大利亚",}
'''for i in range(1,dic.__len__()+1):
print(i,":",dic.pop())'''
#print(dic["中国"]["河北"][1])
#print(["河北"][1])
def loop():
while True:
for i in range(1,dic.__len__()+1): #遍历字典长度,生成序号
print(i,':',dic_dir[i])
dir01=input("please input num or q[quit]:",)#选择对应序号输入以及输入返回上级目录标识
if dir01 in ['1','2','3']:#确认输入序号是否在['1','2','3']中
for j in range(1,dic.__len__()+1):
if int(dir01)==j:
print(">>",j,':',dic_dir[j],"\n") #打印所序号所对应的国家
for i in range(1, dic[dic_dir[j]].__len__() + 1):
print(">>>>",i, ':',dic_dirtt[j][i-1]) #遍历输出所选序号国家对应的省/州
dir02 = input("please input num or b[back] or q[quit]:", )#输入上级所需国家对应的省的序号
if dir02 in ['1', '2', '3']:
for k in range(1, dic[dic_dir[j]].__len__() + 1):#遍历省所对应字典所对应的长度,生成序号
if int(dir02) == k:
print("*******",k,":",dic_dirtt[j][k-1],"\n")
for h in range(1, dic[dic_dir[j]][dic_dirtt[j][k-1]].__len__() + 1):
print("*******^_^>>>>",h, ':',dic[dic_dir[j]][dic_dirtt[j][k-1]][h-1])#打印最终选择的省所对应的城市
print("------------------------------------------------")
# print(k, ':',dic_dirtt[j][k])
elif dir02=='b':
continue; #跳出上一级循环
elif dir02=='q':
return #跳出整个循环
#return False;
else:
print("please insert correct str,strat with higher dir!")
#print(i, ':', dic[dic_dir[j]])
# print(dic[dic_dir[j]])
elif dir01=='q':
break; #退出
else:
print("please insert correct str!")
if __name__=="__main__":
loop()

实现效果:

1)正常输入,分别输入序号1,展示“中国”的下级目录,接着输入1,展示“河北”的下级目录,如下图所示:

Python三级目录展示的实现方法

2)、直接输入[q],退出程序,如下图所示:

Python三级目录展示的实现方法

3)、第一级目录正常输入,第二级目录输入[b],返回上级目录,如下图所示:

Python三级目录展示的实现方法

4)、第一级目录正常输入,第二级目录输入[q],直接退出整个程序,如下图所示:

Python三级目录展示的实现方法

注:本程序仅适用python3.0以上,如若python2.7,请自行修改;

以上所述是小编给大家介绍的Python三级目录展示的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
paramiko模块安装和使用(远程登录服务器)
Jan 27 Python
Python贪吃蛇游戏编写代码
Oct 26 Python
浅谈使用Python内置函数getattr实现分发模式
Jan 22 Python
Python 25行代码实现的RSA算法详解
Apr 10 Python
一条命令解决mac版本python IDLE不能输入中文问题
May 15 Python
Pandas统计重复的列里面的值方法
Jan 30 Python
python 使用plt画图,去除图片四周的白边方法
Jul 09 Python
python自动化测试之DDT数据驱动的实现代码
Jul 23 Python
kafka监控获取指定topic的消息总量示例
Dec 23 Python
对tensorflow 中tile函数的使用详解
Feb 07 Python
Python使用QQ邮箱发送邮件实例与QQ邮箱设置详解
Feb 18 Python
Python操作word文档插入图片和表格的实例演示
Oct 25 Python
Python黑帽编程 3.4 跨越VLAN详解
Sep 28 #Python
python 采集中文乱码问题的完美解决方法
Sep 27 #Python
20招让你的Python飞起来!
Sep 27 #Python
python搭建虚拟环境的步骤详解
Sep 27 #Python
利用python发送和接收邮件
Sep 27 #Python
实现python版本的按任意键继续/退出
Sep 26 #Python
Linux 下 Python 实现按任意键退出的实现方法
Sep 25 #Python
You might like
php 生成WML页面方法详解
2009/08/09 PHP
提高PHP编程效率 引入缓存机制提升性能
2010/02/15 PHP
php设置编码格式的方法
2013/03/05 PHP
php抓取页面的几种方法详解
2013/06/17 PHP
深入解析PHP的Laravel框架中的event事件操作
2016/03/21 PHP
PHP实现导出excel数据的类库用法示例
2016/10/15 PHP
jQuery控制输入框只能输入数值的小例子
2013/03/20 Javascript
jQuery中wrapInner()方法用法实例
2015/01/16 Javascript
AngularJS基础 ng-selected 指令简单示例
2016/08/03 Javascript
详解jQuery中的事件
2016/12/14 Javascript
jquery操作select取值赋值与设置选中实例
2017/02/28 Javascript
JavaScript数据结构之链表的实现
2017/03/19 Javascript
对象不支持indexOf属性或方法的解决方法(必看)
2017/05/28 Javascript
Bootstrap table使用方法记录
2017/08/23 Javascript
基于JS实现一个随机生成验证码功能
2019/05/29 Javascript
JS回调函数原理与用法详解【附PHP回调函数】
2019/07/20 Javascript
[00:32]2018DOTA2亚洲邀请赛VGJ.T出场
2018/04/03 DOTA
[02:31]2018年度DOTA2最具人气选手-完美盛典
2018/12/16 DOTA
python通过pil为png图片填充上背景颜色的方法
2015/03/17 Python
Java编程迭代地删除文件夹及其下的所有文件实例
2018/02/10 Python
Tensorflow--取tensorf指定列的操作方式
2020/06/30 Python
戴尔马来西亚官网:Dell Malaysia
2020/05/02 全球购物
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
编辑求职信样本
2013/12/16 职场文书
人力资源主管岗位职责
2014/01/29 职场文书
酒店销售经理岗位职责
2014/01/31 职场文书
大学生毕业自我鉴定范文
2014/02/03 职场文书
社区志愿者活动方案
2014/08/18 职场文书
2014年办公室主任工作总结
2014/11/12 职场文书
2014年语文教师工作总结
2014/12/18 职场文书
逃课检讨书怎么写
2015/01/01 职场文书
2015年学生会主席工作总结
2015/04/21 职场文书
2015年小学图书室工作总结
2015/05/18 职场文书
Java常用工具类汇总 附示例代码
2021/06/26 Java/Android
Vue 打包后相对路径的引用问题
2022/06/05 Vue.js
python数字图像处理之图像自动阈值分割示例
2022/06/28 Python