Python读取一个目录下所有目录和文件的方法


Posted in Python onJuly 15, 2016

本文实例讲述了Python读取一个目录下所有目录和文件的方法。分享给大家供大家参考,具体如下:

这里介绍的是刚学python时的一个读取目录的列子,给大家分享下:

#!/usr/bin/python
# -*- coding:utf8 -*-
import os
allFileNum = 0
def printPath(level, path):
 global allFileNum
 '''
 打印一个目录下的所有文件夹和文件
 '''
 # 所有文件夹,第一个字段是次目录的级别
 dirList = []
 # 所有文件
 fileList = []
 # 返回一个列表,其中包含在目录条目的名称(google翻译)
 files = os.listdir(path)
 # 先添加目录级别
 dirList.append(str(level))
 for f in files:
  if(os.path.isdir(path + '/' + f)):
   # 排除隐藏文件夹。因为隐藏文件夹过多
   if(f[0] == '.'):
    pass
   else:
    # 添加非隐藏文件夹
    dirList.append(f)
  if(os.path.isfile(path + '/' + f)):
   # 添加文件
   fileList.append(f)
 # 当一个标志使用,文件夹列表第一个级别不打印
 i_dl = 0
 for dl in dirList:
  if(i_dl == 0):
   i_dl = i_dl + 1
  else:
   # 打印至控制台,不是第一个的目录
   print '-' * (int(dirList[0])), dl
   # 打印目录下的所有文件夹和文件,目录级别+1
   printPath((int(dirList[0]) + 1), path + '/' + dl)
 for fl in fileList:
  # 打印文件
  print '-' * (int(dirList[0])), fl
  # 随便计算一下有多少个文件
  allFileNum = allFileNum + 1
if __name__ == '__main__':
 printPath(1, '/home/test/')
 print '总文件数 =', allFileNum

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python基础教程之popen函数操作其它程序的输入和输出示例
Feb 10 Python
python多线程操作实例
Nov 21 Python
玩转python爬虫之爬取糗事百科段子
Feb 17 Python
python range()函数取反序遍历sequence的方法
Jun 25 Python
python代码 输入数字使其反向输出的方法
Dec 22 Python
Python3实现统计单词表中每个字母出现频率的方法示例
Jan 28 Python
Python3.5实现的三级菜单功能示例
Mar 25 Python
NumPy 数组使用大全
Apr 25 Python
python实现广度优先搜索过程解析
Oct 19 Python
详解Python中打乱列表顺序random.shuffle()的使用方法
Nov 11 Python
Python数据可视化:顶级绘图库plotly详解
Dec 07 Python
踩坑:pytorch中eval模式下结果远差于train模式介绍
Jun 23 Python
Python在线运行代码助手
Jul 15 #Python
python 实现网上商城,转账,存取款等功能的信用卡系统
Jul 15 #Python
python 性能提升的几种方法
Jul 15 #Python
浅谈Python 对象内存占用
Jul 15 #Python
python发送邮件功能实现代码
Jul 15 #Python
Python中列表和元组的使用方法和区别详解
Dec 30 #Python
Python中的变量和作用域详解
Jul 13 #Python
You might like
单一index.php实现PHP任意层级文件夹遍历(Zjmainstay原创)
2012/07/31 PHP
PHP中new static() 和 new self() 的区别介绍
2015/01/09 PHP
php修改文件上传限制方法汇总
2015/04/07 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
laravel入门知识点整理
2020/09/15 PHP
PHP 实现链式操作
2021/03/09 PHP
JS array 数组详解
2009/03/22 Javascript
jQuery Ajax提交表单查询获得数据实例代码
2012/09/19 Javascript
jQuery的slideToggle方法实例
2013/05/07 Javascript
JS实现点击表头表格自动排序(含数字、字符串、日期)
2017/01/22 Javascript
jquery插件ContextMenu设置右键菜单
2017/03/13 Javascript
详解angular中的作用域及继承
2017/05/31 Javascript
JavaScript 继承 封装 多态实现及原理详解
2019/07/29 Javascript
js实现带箭头的进度流程
2020/03/26 Javascript
Jquery高级应用Deferred对象原理及使用实例
2020/05/28 jQuery
[00:37]DOTA2上海特级锦标赛 Secert 战队宣传片
2016/03/03 DOTA
[50:48]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
[56:38]DOTA2-DPC中国联赛正赛Aster vs Magma BO3 第一场 3月5日
2021/03/11 DOTA
python类的继承实例详解
2017/03/30 Python
Python正则抓取网易新闻的方法示例
2017/04/21 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
2019/06/17 Python
Python使用Slider组件实现调整曲线参数功能示例
2019/09/06 Python
Python 实现自动导入缺失的库
2019/10/29 Python
利用python实现冒泡排序算法实例代码
2019/12/01 Python
be2台湾单身男女交友:全球网路婚姻介绍的领导品牌
2019/10/11 全球购物
Servlet如何得到客户端机器的信息
2014/10/17 面试题
通信工程毕业生求职信
2013/11/16 职场文书
优秀员工个人的自我评价
2013/11/29 职场文书
奥巴马连任演讲稿
2014/05/15 职场文书
优秀党员自我评价范文
2014/09/15 职场文书
投标承诺函范文
2015/01/21 职场文书
2015年教学管理工作总结
2015/05/20 职场文书
预备党员考察意见范文
2015/06/01 职场文书
莫言获奖感言(全文)
2015/07/31 职场文书
学生检讨书范文
2019/06/24 职场文书
VMware虚拟机安装 Windows Server 2022的详细图文教程
2022/09/23 Servers