如何在python中删除文件,python中删除文件内容

  如何在python中删除文件,python中删除文件内容

  很多时候开发者需要删除文件。也许他错误地创建了文件,或者他不再需要它了。不管是什么原因,有一些方法可以通过Python删除文件,而不是手动查找文件,通过UI交互删除。

  (免费学习推荐:python视频教程)

  使用Python删除文件有多种方法,但最好的方法如下:

  Os.remove()删除文件。

  Os.unlink()删除文件。它是remove()方法的Unix名称。

  Shutil.rmtree()删除目录及其下的所有内容。

  Pathlib。Path.unlink()在Python 3.4和更高版本中用于删除单个文件pathlib模块。

  os.remove()删除文件

  Python中的OS模块提供了与操作系统交互的功能。OS是Python的标准实用模块。该模块提供了一种使用依赖于操作系统的功能的可移植方法。

  Python中的os.remove()方法用于删除文件路径。此方法无法删除目录。如果指定的路径是一个目录,这个方法将抛出OSError。

  注意:您可以使用os.rmdir()删除该目录。

  句法:

  以下是删除Python文件的remove()方法的语法:

  os.remove(路径)参数

  路径——这是要删除的路径或文件名。

  返回值

  remove()方法没有返回值。

  让我们看一些使用os.remove函数删除Python文件的例子。

  示例1:使用OS.Remove()方法删除文件的基本示例。

  #导入操作系统库

  导入操作系统

  #移除文件的内置功能

  os.remove(test_file.txt )

  打印(“文件已成功删除”)输出:

  文件删除成功描述:在上面的例子中,我们删除了名为testfile.txt的文件或文件的路径,解释程序流程的步骤如下:

  1.首先,我们导入了os库,因为remove()方法存在于os库中。

  2.然后,我们使用内置函数os.remove()删除文件的路径。

  3.在这个例子中,我们的示例文件是“test_file.txt”。您可以将所需的文件放在这里。

  注意:如果没有名为test_file.txt的文件,上面的例子将引发一个错误。因此,最好在删除之前检查文件是否可用。

  示例2:使用Os.Path.Isfile检查文件是否存在并使用Os.Remove删除它

  在示例1中,我们只是删除了目录中存在的文件。os.remove()方法将在工作目录中搜索要删除的文件。因此,最好检查文件是否存在。

  让我们学习如何检查在这个路径中是否有一个具有特定名称的文件。我们使用os.path.isfile来检查文件的可用性。

  #导入操作系统库

  导入操作系统

  #检查文件是否存在

  if(OS . path . is file( test . txt )):

  #os.remove()函数删除文件

  OS . remove(“demo . txt”)

  #打印删除确认消息

  打印(文件成功删除qu

  ot;)

  else:

  print("File does not exist")

  #Showing the message instead of throwig an error输出:

  

File Deleted successfully
在上面的示例中,我们仅添加了os.pasth.isfile()方法。这种方法有助于我们找出文件是否存在于特定位置。

  示例3:Python程序删除具有特定扩展名的所有文件

  

import os 

  from os import listdir

  my_path = 'C:\Python Pool\Test\'

  for file_name in listdir(my_path):

   if file_name.endswith('.txt'):

   os.remove(my_path + file_name)

输出:

  使用此程序,我们将从文件夹删除扩展名为.txt的所有文件。

  解释:

  

  • 从os模块导入os模块和listdir。必须使用listdir才能获取特定文件夹中所有文件的列表,并且需要os模块才能删除文件。

      

  • my_path是包含所有文件的文件夹的路径。

      

  • 我们正在遍历给定文件夹中的文件。listdir用于获取特定文件夹中所有文件的一个列表。

      

  • endswith用于检查文件是否以.txt扩展名结尾。当我们删除文件夹中的所有.txt文件时,如果条件可以验证,则进行此操作。

      

  • 如果文件名以.txt扩展名结尾,我们将使用os.remove()函数删除该文件。此函数将文件的路径作为参数。my_path + file_name是我们要删除的文件的完整路径。

      

示例4:删除文件夹中所有文件的Python程序

  要删除特定目录中的所有文件,只需使用*符号作为模式字符串。

  

#Importing os and glob modules

  import os, glob

  #Loop Through the folder projects all files and deleting them one by one

  for file in glob.glob("pythonpool/*"):

   os.remove(file)

   print("Deleted " + str(file))

输出:

  

Deleted pythonpool\test1.txt

  Deleted pythonpool\test2.txt

  Deleted pythonpool\test3.txt

  Deleted pythonpool\test4.txt

在此示例中,我们将删除pythonpool文件夹中的所有文件。

  注意:如果文件夹包含其他子文件夹,则可能会报错,因为glob.glob()方法将获取所有文件夹内容的名称,无论它们是文件还是子文件夹。因此,请尝试使模式更具体(例如*.*),以仅获取具有扩展名的内容。

  使用os.unlink()删除Python文件

  os.unlink()os.remove()的别名。在Unix OS中,删除也称为unlink

  注意:所有功能和语法与os.unlink()os.remove()相同。它们都用于删除Python文件路径。两者都是Python标准库的os模块中执行删除功能的方法。

  它有两个名称,别名:os.unlink()os.remove()

  为同一个函数提供两个别名的可能原因是,该模块的维护者认为,许多程序员可能会从C的底层编程转向Python,其中库函数和底层系统调用称为unlink(),而其他人则可能会使用rm命令(“删除”的缩写)或shell脚本来简化语言。

  使用shutil.rmtree()删除Python文件

  shutil.rmtree():删除指定的目录,所有子目录和所有文件。此功能特别危险,因为它无需检查即可删除所有内容。结果,您可以使用此功能轻松丢失数据。

  rmtree()是shutil模块下的一种方法,该方法以递归方式删除目录及其内容。

  句法:

  

Shutil.rmtree(path,ignore_errors = False,onerror = None)
参数:

  path:类似路径的对象,表示文件路径。类路径对象是表示路径的字符串或字节对象。

  ignore_errors:如果ignore_errorstrue,则删除失败导致的错误将被忽略。

  oneerror:如果ignore_errorsfalse或被忽略,则通过调用onerror指定的处理程序来处理此类错误。

  我们来看一个使用python脚本删除文件的示例。

  示例:使用Shutil.Rmtree()删除文件的Python程序

  

# Python program to demonstrate shutil.rmtree() 

  import shutil

  import os

  # location

  location = "E:/Projects/PythonPool/"

  # directory

  dir = "Test"

  # path

  path = os.path.join(location, dir)

  # removing directory

  shutil.rmtree(path)

输出:

  它将删除Test内文件的整个目录,包括Test文件夹本身。

  Python中使用pathlib.Path.unlink()删除文件

  pathlib模块在Python 3.4及更高版本中可用。如果要在Python 2中使用此模块,可以使用pip进行安装。pathlib提供了一个面向对象的界面,用于处理不同操作系统的文件系统路径。

  要使用pathlib模块删除文件,请创建一个指向该文件的Path对象,然后对该对象调用unlink()方法:

  示例:使用Pathlib删除文件的Python程序

  

#Example of file deletion by pathlib

  import pathlib

  rem_file = pathlib.Path("pythonpool/testfile.txt")

  rem_file.unlink()

在上面的示例中,path()方法用于检索文件路径,而unlink()方法用于删除指定路径的文件。

  unlink()方法适用于文件。如果指定了目录,则会引发OSError。要删除目录,我们可以采用前面讨论的方法之一。

  结论

  在本文中,我们学习了Python删除文件的各种方法。使用Python删除文件或文件夹的语法非常简单。但是,请注意,一旦执行上述命令,您的文件或文件夹将被永久删除。

  如果您仍然对Python删除文件有任何疑问。请在下面的评论部分中告诉我们。

  

大量免费学习推荐,敬请访问python教程(视频)

  

以上就是讲解Python 中删除文件的几种方法的详细内容,更多请关注盛行IT软件开发工作室其它相关文章!

  

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: