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程序中操作MySQL的基本方法
Jul 29 Python
python 性能优化方法小结
Mar 31 Python
python3.6+django2.0开发一套学员管理系统
Mar 03 Python
Python堆排序原理与实现方法详解
May 11 Python
对python多线程SSH登录并发脚本详解
Feb 14 Python
Django实现学员管理系统
Feb 26 Python
Python使用字典的嵌套功能详解
Feb 27 Python
Python3获取电脑IP、主机名、Mac地址的方法示例
Apr 11 Python
Pytorch 实现自定义参数层的例子
Aug 17 Python
Python多线程获取返回值代码实例
Feb 17 Python
python实现密度聚类(模板代码+sklearn代码)
Apr 27 Python
基于Python的自媒体小助手---登录页面的实现代码
Jun 29 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
PHP 清空varnish 缓存的详解(包括指定站点下的)
2013/06/20 PHP
SAE实时日志接口SDK用法示例
2016/10/09 PHP
php实现的SSO单点登录系统接入功能示例分析
2016/10/12 PHP
PHP实现的观察者模式实例
2017/06/21 PHP
javascript下查找父节点的简单方法
2007/08/13 Javascript
Firefox下提示illegal character并出现乱码的原因
2010/03/25 Javascript
JavaScript中的私有/静态属性介绍
2012/07/26 Javascript
jQuery创建平滑的页面滚动(顶部或底部)
2013/02/26 Javascript
javascript中强制执行toString()具体实现
2013/04/27 Javascript
TypeOf这些知识点你了解吗
2016/02/21 Javascript
三种带箭头提示框总结实例
2016/06/14 Javascript
jQuery实现指定区域外单击关闭指定层的方法【经典】
2016/06/22 Javascript
@ResponseBody 和 @RequestBody 注解的区别
2017/03/08 Javascript
JS实现的模仿QQ头像资料卡显示与隐藏效果
2017/04/07 Javascript
react.js CMS 删除功能的实现方法
2017/04/17 Javascript
JS倒计时实例_天时分秒
2017/08/22 Javascript
浅谈vue中.vue文件解析流程
2018/04/24 Javascript
解决vue项目打包后提示图片文件路径错误的问题
2018/07/04 Javascript
javascript实现函数柯里化与反柯里化过程解析
2019/10/08 Javascript
jQuery实现中奖播报功能(让文本滚动起来) 简单设置数值即可
2020/03/20 jQuery
Vue实现手机号、验证码登录(60s禁用倒计时)
2020/12/19 Vue.js
[04:05]TI9战队采访 - Natus Vincere
2019/08/22 DOTA
Python中列表的一些基本操作知识汇总
2015/05/20 Python
代码讲解Python对Windows服务进行监控
2018/02/11 Python
python实现在图片上画特定大小角度矩形框
2018/10/24 Python
python调用外部程序的实操步骤
2019/03/04 Python
Python学习笔记之lambda表达式用法详解
2019/08/08 Python
python之array赋值技巧分享
2019/11/28 Python
Ubuntu16.04安装python3.6.5步骤详解
2020/01/10 Python
荷兰照明、灯具和配件网上商店:dmlights
2019/08/25 全球购物
《一件运动衫》教学反思
2014/02/19 职场文书
纠纷协议书
2014/04/16 职场文书
《特殊的葬礼》教学反思
2014/04/27 职场文书
平安家庭示范户事迹
2014/06/02 职场文书
新郎婚礼答谢词
2015/01/04 职场文书
MySQL分区表实现按月份归类
2021/11/01 MySQL