很多时候开发者需要删除文件。可能是他错误地创建了文件,或者不再需要该文件。无论出于何种原因,都有一些方法可以通过Python来删除文件,而无需手动查找文件并通过UI交互来进行删除操作。

使用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()删除目录。

句法:

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

os.remove(path)

参数

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

返回值

remove()方法没有返回值。

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

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

# Importing the os library
import os# Inbuilt function to remove files
os.remove("test_file.txt")
print("File removed successfully")

输出:

File removed successfully

说明:在上面的示例中,我们删除了文件或删除了名为testfile.txt的文件的路径。解释程序流程的步骤如下:

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

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

3.在此示例中,我们的示例文件是“ test_file.txt”。您可以在此处放置所需的文件。

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

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

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

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

#importing the os Library
import os#checking if file exist or not
if(os.path.isfile("test.txt")):#os.remove() function to remove the fileos.remove("demo.txt")#Printing the confirmation message of deletionprint("File Deleted successfully")
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 pathlibimport pathlibrem_file = pathlib.Path("pythonpool/testfile.txt")rem_file.unlink()

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

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

结论

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

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

在这里还是要推荐下我自己建的Python学习群:721195303,群里都是学Python的,如果你想学或者正在学习Python ,欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份2021最新的Python进阶资料和零基础教学,欢迎进阶中和对Python感兴趣的小伙伴加入!

Python 中删除文件的几种方法 【赶紧收藏】相关推荐

  1. Python 中删除文件的几种方法|好用

    很多时候开发者需要删除文件.可能是他错误地创建了文件,或者不再需要该文件.无论出于何种原因,都有一些方法可以通过Python来删除文件,而无需手动查找文件并通过UI交互来进行删除操作. 使用Pytho ...

  2. Python 中删除文件的几种方法

    很多时候开发者需要删除文件.可能是他错误地创建了文件,或者不再需要该文件.无论出于何种原因,都有一些方法可以通过Python来删除文件,而无需手动查找文件并通过UI交互来进行删除操作. 使用Pytho ...

  3. 如何在 Python 中删除文件或文件夹?

    问: 如何删除文件或文件夹? 答1: huntsbot.com汇聚了国内外优秀的初创产品创意,可按收入.分类等筛选,希望这些产品与实践经验能给您带来灵感. os.remove() 删除一个文件. os ...

  4. python写入csv文件的几种方法

    python写入csv文件的几种方法 最常用的一种方法,利用pandas包 import pandas as pd #任意的多组列表 a = [1,2,3] b = [4,5,6] #字典中的key值 ...

  5. python 删除文件-python实现删除文件与目录的方法

    本文实例讲述了python实现删除文件与目录的方法.分享给大家供大家参考.具体实现方法如下: os.remove(path)删除文件 path. 如果path是一个目录, 抛出 OSError错误.如 ...

  6. python下载方法-python实现下载文件的三种方法_python

    本篇文章主要介绍了python实现下载文件的三种方法,最常用的方法就是通过Http利用urllib或者urllib2模块还有requests,有兴趣的可以了解一下. Python开发中时长遇到要下载文 ...

  7. python下载的文件放在哪里的-python实现下载文件的三种方法

    Python开发中时长遇到要下载文件的情况,最常用的方法就是通过Http利用urllib或者urllib2模块. 当然你也可以利用ftplib从ftp站点下载文件.此外Python还提供了另外一种方法 ...

  8. python实现删除文件与目录的方法

    参考网址:http://www.jb51.net/article/57293.htm 本文实例讲述了python实现删除文件与目录的方法.分享给大家供大家参考.具体实现方法如下: os.remove( ...

  9. python 下载文件-python实现下载文件的三种方法_python

    本篇文章主要介绍了python实现下载文件的三种方法,最常用的方法就是通过Http利用urllib或者urllib2模块还有requests,有兴趣的可以了解一下. Python开发中时长遇到要下载文 ...

最新文章

  1. Linux服务管理---系统运行级别、rpm启动与自启动、源码包的启动...
  2. python视频教程大全
  3. git服务的安装和使用
  4. 杭电1260java实现
  5. 伊利诺伊香槟分校计算机科学,伊利诺伊大学香槟分校计算机科学与工程世界排名2019年最新排名第24(ARWU世界排名)...
  6. 如何搭建个人独立博客
  7. 深度学习自学(十四):人脸检测-出现cudaGetDeviceCount failed
  8. [查阅]MSIL Instruction Set
  9. oracle 分析函数之分组求和、连续求和
  10. HDMI接口定义,传输流程
  11. 【作图】origin制作图中图
  12. 小福利,杨格(Young)不等式验证之用python里面的matplotlib和numpy模块画图
  13. 详解Java中Comparable和Comparator接口的区别
  14. GPU求解粘性不可压流体
  15. CAD碎片化学习教程 @4. 按比例放大或缩小图形尺寸
  16. 4G 优盘格式化后变4M 利用量产工具修复~~~
  17. Java面试进阶指北
  18. 【python】获取当前时间(年月日时分秒)
  19. (转)案例分析:中介提供的二手房合同不规范催生大量房屋买卖纠纷
  20. Go语言学习笔记—golang基础语法

热门文章

  1. 淘宝钻石展位怎么做?大神导航,一个神奇的网站,从此开启大神之路!
  2. 数据结构和内存中堆和栈的区别
  3. 服务器安全主要包括哪些?
  4. python——paramiko详解
  5. [供应商管理]-汽车零配件企业快速搭建供应商评价、绩效管理体系
  6. js删除数组所有元素
  7. HDG 成都站报名开启 | 聆听技术干货,感受实际 Demo 演示
  8. Java垃圾收集器与内存分配策略详解
  9. 用Python制作音乐播放器(上)
  10. 知网下载pdf文件的方法