python遍历目录的方法小结

yipeiwu_com5年前Python基础

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

方法一使用递归:

"""
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 )

方法二:

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相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

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

相关文章

python负载均衡的简单实现方法

提到分发请求,相信大多数人首先会想到Nginx,Nginx作为一种多功能服务器,不仅提供了反向代理隐藏主机ip的能力,还拥有简单的缓存加速功能。当然Nginx最强大的功能还是分发请求,不...

django将数组传递给前台模板的方法

将数组传递给前台模板: 1. def modifyBtn(req,modifyip): print modifyip conn= MySQLdb.connect(...

python安装twisted的问题解析

python安装twisted的问题解析

今天在用pip安装wisted模块的时候没有任何的问题,但是当使用的时候发生了,无法导入win32api这个包,原因是因为python不能自己去使用系统的api。因此需要去安装pywin...

Python编程之string相关操作实例详解

Python编程之string相关操作实例详解

本文实例讲述了Python编程之string相关操作。分享给大家供大家参考,具体如下: #coding=utf8 ''''' 字符串是Python中最常见的类型。可以通过引号见包含字...

在交互式环境中执行Python程序过程详解

在交互式环境中执行Python程序过程详解

前言 相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行、命令行窗口运行、开发工具上运行等,其中在不同的操作平台上还互不相同。今天...