Python读取一个目录下的目录及文件数

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

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

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/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图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》

你可能感兴趣的:(Python)