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

yipeiwu_com6年前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 

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

相关文章

python 截取 取出一部分的字符串方法

下面是split截取获得 >>> str = 'http://manualfile.s3.amazonaws.com/pdf/gti-chis-1-user-9fb...

python使用tomorrow实现多线程的例子

python使用tomorrow实现多线程的例子

如下所示: import time,requestes from tomorrow import threads @threads(10)#使用装饰器,这个函数异步执行 def d...

python文本数据相似度的度量

编辑距离 编辑距离,又称为Levenshtein距离,是用于计算一个字符串转换为另一个字符串时,插入、删除和替换的次数。例如,将'dad'转换为'bad'需要一次替换操作,编辑距离为1。...

Python 实现子类获取父类的类成员方法

大家好,今天在写代码的时候,遇到了这样一种情况。我有如下所示的几个类用来存放程序配置(其实当做命名空间来用,同时感觉能够继承方便一点), import os class Config...

Python+request+unittest实现接口测试框架集成实例

Python+request+unittest实现接口测试框架集成实例

1、为什么要写代码实现接口自动化 大家知道很多接口测试工具可以实现对接口的测试,如postman、jmeter、fiddler等等,而且使用方便,那么为什么还要写代码实现接口自动化呢?工...