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 相关文章推荐
python 字符串格式化代码
Mar 17 Python
11个并不被常用但对开发非常有帮助的Python库
Mar 31 Python
python查找目录下指定扩展名的文件实例
Apr 01 Python
Python设置Socket代理及实现远程摄像头控制的例子
Nov 13 Python
Python JSON编解码方式原理详解
Jan 20 Python
Python获取、格式化当前时间日期的方法
Feb 10 Python
Pycharm远程连接服务器并实现代码同步上传更新功能
Feb 25 Python
Python基于类路径字符串获取静态属性
Mar 12 Python
实现Python3数组旋转的3种算法实例
Sep 16 Python
Python可以用来做什么
Nov 23 Python
使用python实现学生信息管理系统
Feb 25 Python
解决Python import .pyd 可能遇到路径的问题
Mar 04 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内存不够用的快速解决方法
2013/10/26 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
微信公众平台开发教程②微信端分享功能图文详解
2019/04/10 PHP
js确定对象类型方法
2012/03/30 Javascript
javascript右下角弹层及自动隐藏(自己编写)
2013/11/20 Javascript
原生javascript实现图片按钮切换
2015/01/12 Javascript
Node.js开发之访问Redis数据库教程
2015/01/14 Javascript
JQuery的Pager分页器实现代码
2016/05/03 Javascript
js实现可键盘控制的简单抽奖程序
2016/07/13 Javascript
微信小程序入门教程
2016/11/18 Javascript
jQuery分页插件jquery.pagination.js使用方法解析
2017/02/09 Javascript
Vue.js组件tab实现选项卡切换
2020/03/23 Javascript
微信小程序商城项目之侧栏分类效果(1)
2017/04/17 Javascript
Nodejs实现文件上传的示例代码
2017/09/26 NodeJs
JS 使用 window对象的print方法实现分页打印功能
2018/05/16 Javascript
详解vue.js根据不同环境(正式、测试)打包到不同目录
2018/07/13 Javascript
vue 实现特定条件下绑定事件
2019/11/09 Javascript
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
Python实现的knn算法示例
2018/06/14 Python
Python通过TensorFlow卷积神经网络实现猫狗识别
2019/03/14 Python
使用Python-OpenCV向图片添加噪声的实现(高斯噪声、椒盐噪声)
2019/05/28 Python
Python实现Wordcloud生成词云图的示例
2020/03/30 Python
Python SMTP配置参数并发送邮件
2020/06/16 Python
基于python模拟TCP3次握手连接及发送数据
2020/11/06 Python
员工薪酬福利制度
2014/01/17 职场文书
九年级体育教学反思
2014/01/23 职场文书
校园学雷锋活动月总结
2014/03/09 职场文书
婚前协议书范本
2014/04/15 职场文书
大学生村官演讲稿
2014/04/25 职场文书
项目经理任命书内容
2014/06/06 职场文书
安全第一课观后感
2015/06/18 职场文书
个人催款函范文
2015/06/23 职场文书
宾馆卫生管理制度
2015/08/06 职场文书
教你做个可爱的css滑动导航条
2021/06/15 HTML / CSS
《巫师》是美食游戏?CDPR10月将推出《巫师》官方食谱
2022/04/03 其他游戏
GoFrame框架数据校验之校验结果Error接口对象
2022/06/21 Golang