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

719次阅读  |  发布于5年以前

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 

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

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8