python 实现删除文件或文件夹实例详解

python 实现删除文件或文件夹

最近自己学习Python 的知识,自己学习抓取网页的内容知识等,在学习的时候Python 删除文件夹或者文件知识的时候,觉得本篇内容不错,推荐给大家。

实例代码,仔细看注释明细:

#-*- coding: UTF-8 -*-
# 有时候要删除文件夹里文件或文件夹
# 这个小类用来删除文件或文件夹还是相当有用的
# 删除文件时有时希看到删除的结果,于是就有了这个Deleter了
# 下面的一些文件注释用的是Doxygen的样式
# 用了英文,先就不改回中文吧。
class Deleter():
  def __init__(self, ToPrint=True, Logger=None):
    self.Logger = Logger
    self.ToPrint = ToPrint
    return 

  def Log(self, Str):
    if self.Logger:
      self.Logger.Log(Str)
    if self.ToPrint:
      print Str
    return 

  ## Delete a folder
  # @param FolderName folder to delete
  #<br/>
  #Example:
  #<pre>
  #  T = Common()
  #  FolderName = r'Temp'
  #  T.DeleteFolder(FolderName)
  #</pre>
  def DeleteFolder(self, FolderName):
    '''''delete files and folders'''
    for Item in os.listdir(FolderName):
      TempPath = os.path.join(FolderName, Item)
      if os.path.isfile(TempPath):
        self.DeleteFile(TempPath)
        pass
      elif os.path.isdir(TempPath):
        self.DeleteFolder(TempPath)
        pass
      else:
        self.Log("Not a file or folder: %s" % (FolderName))
        pass
      pass 

    try:
      os.rmdir(FolderName)
      self.Log("Folder deleted: %s" % (FolderName))
    except:
      self.Log("Failed to delete folder: %s" % (FolderName))
      pass 

    return 

  ## Delete a file
  # @param FileName file to delete
  #<br/>
  #Example:
  #<pre>
  #  T = Common()
  #  FolderName = r'TempFile.txt'
  #  T.DeleteFile(FileName)
  #</pre>
  def DeleteFile(self, FileName):
    try:
      os.remove(FileName)
      self.Log("File deleted: %s" % (FileName))
    except:
      self.Log("Failed to delete file: %s" % (FileName))
      pass
    return 

  ## Delete a list of folders
  # @param FolderList a list of folder to delete
  #<br/>
  #Example:
  #<pre>
  #  T = Common()
  #  FolderNameList = [r'Temp1', r'Temp2']
  #  T.DeleteFolders(FolderNameList)
  #</pre>
  def DeleteFolders(self, FolderNameList):
    for FolderName in FolderNameList:
      self.DeleteFolder(FolderName)
    return 

  ## Delete a list of files
  # @param FolderList a list of files to delete
  #<br/>
  #Example:
  #<pre>
  #  T = Common()
  #  FolderNameList = [r'Temp1.txt', r'Temp2.txt']
  #  T.DeleteFiles(FileNameList)
  #</pre>
  def DeleteFiles(self, FileNameList):
    for FileName in FileNameList:
      self.DeleteFile(FileName)
    return 

Op = Deleter()
Op.DeleteFile('a.txt')
# Failed to delete file: a.txt 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(0)

相关推荐

  • Python删除windows垃圾文件的方法

    本文实例讲述了Python删除windows垃圾文件的方法.分享给大家供大家参考.具体如下: #coding:utf-8 import os #from glob import glob if os.name == 'nt': if 'HOMEPATH' in os.environ: home = os.environ['HOMEDRIVE'] + os.environ['HOMEPATH'] else: home = os.environ['HOMEPATH'] workpath = os.p

  • Python实现删除当前目录下除当前脚本以外的文件和文件夹实例

    本文实例讲述了Python实现删除当前目录下除当前脚本以外的文件和文件夹.分享给大家供大家参考.具体如下: import os,sys import shutil cur_file = os.path.basename(sys.argv[0]) dir_content = [x for x in os.listdir(".") if x != cur_file] for f in dir_content: if os.path.isdir(f): shutil.rmtree(f) el

  • Python删除指定目录下过期文件的2个脚本分享

    脚本1: 这两天用python写了一个删除指定目录下过期时间的脚本.也可能是我初学python,对python还不够熟习,总觉得这个脚本用shell写应该更简单也更容易些.就功能上来说,该脚本已经实现了我想要的效果,不过该脚本还不够通用性,还有更多可以完善的地方.目前该脚本在python2.4下运行良好.同时,我在脚本中加入了对python版本的判断,理论上2.7下也应该可以正常使用.有环境的朋友可以帮忙测试一下.该脚本不完善的地方在于,只能支持一级目录下的文件删除,还不支持目录递归.同时过期文

  • Python删除空文件和空文件夹的方法

    本文实例讲述了Python删除空文件和空文件夹的方法.分享给大家供大家参考.具体实现方法如下: #-*- coding:cp936 -*- """ os.walk() 函数声明:walk(top,topdown=True,onerror=None) 1>参数top表示需要遍历的目录树的路径 2>参数topdown的默认值是"True",表示首先返回目录树下的文件,然后在遍历目录树的子目录.Topdown的值为"False"时

  • python创建和删除目录的方法

    本文实例讲述了python创建和删除目录的方法.分享给大家供大家参考.具体分析如下: 下面的代码可以先创建一个目录,然后调用自定义的deleteDir函数删除整个目录 #-------------------------------------- # Name: create_directory.py # Author: Kevin Harris # Last Modified: 02/13/04 # Description: This Python script demonstrates #

  • python实现删除文件与目录的方法

    本文实例讲述了python实现删除文件与目录的方法.分享给大家供大家参考.具体实现方法如下: os.remove(path) 删除文件 path. 如果path是一个目录, 抛出 OSError错误.如果要删除目录,请使用rmdir(). remove() 同 unlink() 的功能是一样的 在Windows系统中,删除一个正在使用的文件,将抛出异常.在Unix中,目录表中的记录被删除,但文件的存储还在. os.removedirs(path) 递归地删除目录.类似于rmdir(), 如果子目

  • python遍历文件夹并删除特定格式文件的示例

    复制代码 代码如下: #!/usr/bin/python# -*- coding: utf-8 -*- import os def del_files(path):    for root , dirs, files in os.walk(path):        for name in files:            if name.endswith(".tmp"):                os.remove(os.path.join(root, name))  pri

  • Python简单删除目录下文件以及文件夹的方法

    本文实例讲述了Python简单删除目录下文件以及文件夹的方法.分享给大家供大家参考.具体如下: #!/usr/bin/env python import os import shutil filelist=[] rootdir="/home/zoer/aaa" filelist=os.listdir(rootdir) for f in filelist: filepath = os.path.join( rootdir, f ) if os.path.isfile(filepath):

  • python删除过期文件的方法

    本文实例讲述了python删除过期文件的方法.分享给大家供大家参考.具体实现方法如下: # remove all jpeg image files of an expired modification date = mtime # you could also use creation date (ctime) or last access date (atime) # os.stat(filename) returns (mode, ino, dev, nlink, uid, gid, siz

  • Python简单实现自动删除目录下空文件夹的方法

    本文实例讲述了Python简单实现自动删除目录下空文件夹的方法.分享给大家供大家参考,具体如下: 总是发现电脑用上一段时间,各种软件生成各种目录,可是这些目录都是空文件夹,感觉没用,或许有些许强迫症吧,每次看到都会去删除掉他们,有时候真的太多了,让人删除起来就蛋疼,最近学习Python,特别希望搞些有用的小脚本,然后就开始使用python搞起了这个小脚本的编写. 因为完全是个初学者,所以写起脚本来,各种百度,google,可到最后我写的脚本也不能达到我的目的,只能删除一级目录下的空文件夹,而子目

  • Python实现递归遍历文件夹并删除文件

    思路: 遍历文件夹下面的文件夹 如果文件夹名称等于".svn",则修改文件夹的属性(因为".svn"的文件都是只读的,你不能直接删除) 删除此文件夹 如果文件夹名称不等于".svn",则递归上面的方法 Python的实现 代码 import os import shutil import os.path import stat rootdir="F:\\work\\Test" for parent,dirnames,filen

随机推荐