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 socket多线程通讯实例分析(聊天室)
Apr 06 Python
对python3 urllib包与http包的使用详解
May 10 Python
Python实现的远程登录windows系统功能示例
Jun 21 Python
Python获取命令实时输出-原样彩色输出并返回输出结果的示例
Jul 11 Python
详解python中的index函数用法
Aug 06 Python
Python 下载及安装详细步骤
Nov 04 Python
详解python opencv、scikit-image和PIL图像处理库比较
Dec 26 Python
pytorch 批次遍历数据集打印数据的例子
Dec 30 Python
jupyter notebook 参数传递给shell命令行实例
Apr 10 Python
Python多线程thread及模块使用实例
Apr 28 Python
Virtualenv 搭建 Py项目运行环境的教程详解
Jun 22 Python
python如何导入依赖包
Jul 13 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命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法
2015/05/25 PHP
浅谈PHP的反射API
2017/02/26 PHP
php实现等比例压缩图片
2018/07/26 PHP
PHP面向对象程序设计之接口的继承定义与用法详解
2018/12/20 PHP
PHP7生产环境队列Beanstalkd用法详解
2020/05/19 PHP
屏蔽网页右键复制和ctrl+c复制的js代码
2013/01/04 Javascript
JS实现的网页倒计时数字时钟效果
2015/03/02 Javascript
JS运动基础框架实例分析
2015/03/03 Javascript
jQuery在页面加载时动态修改图片尺寸的方法
2015/03/20 Javascript
jquery控制显示服务器生成的图片流
2015/08/04 Javascript
基于javascript实现最简单的选项卡切换效果
2016/05/16 Javascript
纯前端JavaScript实现Excel IO案例分享
2016/08/26 Javascript
浅谈angularjs module返回对象的坑(推荐)
2016/10/21 Javascript
详解Vue2.X的路由管理记录之 钩子函数(切割流水线)
2017/05/02 Javascript
ES6学习教程之对象字面量详解
2017/10/09 Javascript
详解angularjs跨页面传参遇到的一些问题
2018/11/01 Javascript
layui实现下拉框三级联动
2019/07/26 Javascript
React中使用UMEditor的方法示例
2019/12/27 Javascript
Vue在H5 项目中使用融云进行实时个人单聊通讯
2020/12/14 Vue.js
[06:33]DOTA2亚洲邀请赛小组赛第二日 TOP10精彩集锦
2015/01/31 DOTA
深入解析Python中的__builtins__内建对象
2016/06/21 Python
python 打印对象的所有属性值的方法
2016/09/11 Python
pandas按若干个列的组合条件筛选数据的方法
2018/04/11 Python
python list格式数据excel导出方法
2018/10/31 Python
Python面向对象之类和对象实例详解
2018/12/10 Python
python全栈要学什么 python全栈学习路线
2019/06/28 Python
python3 图片 4通道转成3通道 1通道转成3通道 图片压缩实例
2019/12/03 Python
查看端口并杀进程python脚本代码
2019/12/17 Python
python+opencv3.4.0 实现HOG+SVM行人检测的示例代码
2021/01/28 Python
幼儿园教师请假制度
2014/01/16 职场文书
应聘教师自荐书
2014/06/16 职场文书
2014年扫黄打非工作总结
2014/12/03 职场文书
文言文辞职信
2015/02/28 职场文书
具结保证书范本
2015/05/11 职场文书
python之json文件转xml文件案例讲解
2021/08/07 Python
python可视化之颜色映射详解
2021/09/15 Python