返回python ......登陆

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

巴扎黑2017-01-12 13:41:49295

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

更多关于python 实现删除文件或文件夹实例详解请关注PHP中文网(www.php.cn)其他文章!

最新手记推荐

• 用composer安装thinkphp框架的步骤• 省市区接口说明• 用thinkphp,后台新增栏目• 管理员添加编辑删除• 管理员添加编辑删除

全部回复(0)我要回复

暂无评论~
  • 取消回复发送