Python中删除文件的几种方法 python如何删除文件夹中的文件


Python中删除文件的几种方法 python如何删除文件夹中的文件

文章插图
很多时候开发者需要删除文件 。可能是他错误地创建了文件 , 或者不再需要该文件 。无论出于何种原因 , 都有一些方法可以通过 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)
【Python中删除文件的几种方法 python如何删除文件夹中的文件】参数
  • 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 file
os.remove(\”demo.txt\”)
#Printing the confirmation message of deletion
print(\”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 是我们要删除的文件的完整路径 。