python遍历目录的方法小结

时间:2022-10-05 23:37:02

本文实例总结了python遍历目录的方法。分享给大家供大家参考,具体如下:

方法一使用递归:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
"""
def WalkDir( dir, dir_callback = None, file_callback = None ):
  for item in os.listdir( dir ):
    print item;
    fullpath = dir + os.sep + item
    if os.path.isdir( fullpath ):
      WalkDir( fullpath, dir_callback, file_callback )
      if dir_callback: dir_callback( fullpath )
      else:
        if file_callback: file_callback( fullpath )"""
def DeleteDir( dir ):
  print "path"
    #os.rmdir( dir )
def DeleteFile( file ):
  try:
    print "file"
    #os.unlink( file )
  except WindowsError, e:
    pass
WalkDir( os.environ['TEMP'], DeleteDir, DeleteFile )

方法二:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import os, stat
def WalkDir( dir, dir_callback = None, file_callback = None ):
  for root, dirs, files in os.walk(dir):
    for f in files:
      print f
      file_path = os.path.join(root, f)
      if file_callback: file_callback( file_path )
      for d in dirs:
        dir_path = os.path.join(root, d)
        if dir_callback: dir_callback( dir_path )
def DeleteDir( dir ):
  print "path"
    #os.rmdir( dir )
def DeleteFile( file ):
  try:
    print "file"
    #os.unlink( file )
  except WindowsError, e:
    pass
WalkDir( os.environ['TEMP'], DeleteDir, DeleteFile )

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