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求最大连续子数组的和

抛出问题: 求一数组如 l = [0, 1, 2, 3, -4, 5, -6],求该数组的最大连续子数组的和 如结果为[0,1,2,3,-4,5] 的和为7 问题分析: 这个问题很...

Pandas之Dropna滤除缺失数据的实现方法

约定: import pandas as pd import numpy as np from numpy import nan as NaN 滤除缺失数据 pandas的设计目...

python使用KNN算法识别手写数字

本文实例为大家分享了python使用KNN算法识别手写数字的具体代码,供大家参考,具体内容如下 # -*- coding: utf-8 -*- #pip install numpy...

单链表反转python实现代码示例

单链表反转python实现代码示例

单链表的反转可以使用循环,也可以使用递归的方式 1.循环反转单链表 循环的方法中,使用pre指向前一个结点,cur指向当前结点,每次把cur->next指向pre即可。 代码:...

python里使用正则表达式的组嵌套实例详解

python里使用正则表达式的组嵌套实例详解 由于组本身是一个完整的正则表达式,所以可以将组嵌套在其他组中,以构建更复杂的表达式。下面的例子,就是进行组嵌套的例子: #python...