主頁 > 知識庫 > Python中刪除文件的幾種方法實例

Python中刪除文件的幾種方法實例

熱門標(biāo)簽:云南地圖標(biāo)注 汕頭電商外呼系統(tǒng)供應(yīng)商 賓館能在百度地圖標(biāo)注嗎 400電話 申請 條件 鄭州智能外呼系統(tǒng)中心 電銷機器人 金倫通信 南京crm外呼系統(tǒng)排名 crm電銷機器人 北京外呼電銷機器人招商

前言

很多時候開發(fā)者需要刪除文件??赡苁撬e誤地創(chuàng)建了文件,或者不再需要該文件。無論出于何種原因,都有一些方法可以通過Python來刪除文件,而無需手動查找文件并通過UI交互來進行刪除操作。

使用Python刪除文件有多種方法,但是最好的方法如下:

  • os.remove()刪除文件
  • os.unlink()刪除文件。它是remove()方法的Unix名稱。
  • shutil.rmtree()刪除目錄及其下面所有內(nèi)容。
  • pathlib.Path.unlink()在Python 3.4及更高版本中用來刪除單個文件pathlib模塊。

os.remove()刪除文件

Python中的OS模塊提供了與操作系統(tǒng)進行交互的功能。OS屬于Python的標(biāo)準(zhǔn)實用程序模塊。該模塊提供了使用依賴于操作系統(tǒng)的功能的便攜式方法。

Python中的os.remove()方法用于刪除文件路徑。此方法無法刪除目錄。如果指定的路徑是目錄,則該方法將引發(fā)OSError。

注意:可以使用os.rmdir()刪除目錄。

句法:

以下是remove()方法刪除Python文件的語法:

os.remove(path)

參數(shù)

  • path —— 這是要刪除的路徑或文件名。

返回值

  • remove()方法沒有返回值。

我們來看一些使用os.remove函數(shù)刪除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.首先,我們導(dǎo)入了os庫,因為os庫中存在remove()方法。

2.然后,我們使用內(nèi)置函數(shù)os.remove()刪除文件的路徑。

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

注意:如果沒有名為test_file.txt的文件,則上面的示例將引發(fā)錯誤。因此,最好在刪除文件之前先檢查文件是否可用。

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

在示例1中,我們剛剛刪除了目錄中存在的文件。os.remove()方法將在工作目錄中搜索要刪除的文件。因此,最好檢查文件是否存在。

讓我們學(xué)習(xí)如何檢查具有特定名稱的文件在該路徑中是否可用。我們正在使用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模塊導(dǎo)入os模塊和listdir。必須使用listdir才能獲取特定文件夾中所有文件的列表,并且需要os模塊才能刪除文件。
  • my_path是包含所有文件的文件夾的路徑。
  • 我們正在遍歷給定文件夾中的文件。listdir用于獲取特定文件夾中所有文件的一個列表。
  • endswith用于檢查文件是否以.txt擴展名結(jié)尾。當(dāng)我們刪除文件夾中的所有.txt文件時,如果條件可以驗證,則進行此操作。
  • 如果文件名以.txt擴展名結(jié)尾,我們將使用os.remove()函數(shù)刪除該文件。此函數(shù)將文件的路徑作為參數(shù)。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 pythonpooltest1.txt
Deleted pythonpooltest2.txt
Deleted pythonpooltest3.txt
Deleted pythonpooltest4.txt

在此示例中,我們將刪除pythonpool文件夾中的所有文件。

注意:如果文件夾包含其他子文件夾,則可能會報錯,因為glob.glob()方法將獲取所有文件夾內(nèi)容的名稱,無論它們是文件還是子文件夾。因此,請嘗試使模式更具體(例如*.*),以僅獲取具有擴展名的內(nèi)容。

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

os.unlink()是os.remove()的別名。在Unix OS中,刪除也稱為unlink。

注意:所有功能和語法與os.unlink()和os.remove()相同。它們都用于刪除Python文件路徑。兩者都是Python標(biāo)準(zhǔn)庫的os模塊中執(zhí)行刪除功能的方法。

它有兩個名稱,別名:os.unlink()和os.remove()

為同一個函數(shù)提供兩個別名的可能原因是,該模塊的維護者認為,許多程序員可能會從C的底層編程轉(zhuǎn)向Python,其中庫函數(shù)和底層系統(tǒng)調(diào)用稱為unlink( ),而其他人則可能會使用rm命令(“刪除”的縮寫)或shell腳本來簡化語言。

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

shutil.rmtree():刪除指定的目錄,所有子目錄和所有文件。此功能特別危險,因為它無需檢查即可刪除所有內(nèi)容。結(jié)果,您可以使用此功能輕松丟失數(shù)據(jù)。

rmtree()是shutil模塊下的一種方法,該方法以遞歸方式刪除目錄及其內(nèi)容。

句法:

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

參數(shù):

  • path:類似路徑的對象,表示文件路徑。類路徑對象是表示路徑的字符串或字節(jié)對象。
  • ignore_errors:如果ignore_errors為true,則刪除失敗導(dǎo)致的錯誤將被忽略。
  • oneerror:如果ignore_errors為false或被忽略,則通過調(diào)用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內(nèi)文件的整個目錄,包括Test文件夾本身。

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

pathlib模塊在Python  3.4及更高版本中可用。如果要在Python 2中使用此模塊,可以使用pip進行安裝。pathlib提供了一個面向?qū)ο蟮慕缑?,用于處理不同操作系統(tǒng)的文件系統(tǒng)路徑。

要使用pathlib模塊刪除文件,請創(chuàng)建一個指向該文件的Path對象,然后對該對象調(diào)用unlink()方法:

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

#Example of file deletion by pathlib
 
import pathlib
 
rem_file = pathlib.Path("pythonpool/testfile.txt")

rem_file.unlink()

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

unlink()方法適用于文件。如果指定了目錄,則會引發(fā)OSError。要刪除目錄,我們可以采用前面討論的方法之一。

結(jié)論

在本文中,我們學(xué)習(xí)了Python刪除文件的各種方法。使用Python刪除文件或文件夾的語法非常簡單。但是,請注意,一旦執(zhí)行上述命令,您的文件或文件夾將被永久刪除。

到此這篇關(guān)于Python中刪除文件的文章就介紹到這了,更多相關(guān)Python刪除文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python判斷圖片寬度和高度后刪除圖片的方法
  • Python列表刪除重復(fù)元素與圖像相似度判斷及刪除實例代碼
  • 使用python如何刪除同一文件夾下相似的圖片
  • python matplotlib繪圖實現(xiàn)刪除重復(fù)冗余圖例的操作
  • python3 刪除所有自定義變量的操作
  • python刪除csv文件的行列
  • python讀寫刪除復(fù)制文件操作方法詳細實例總結(jié)
  • Python 有可能刪除 GIL 嗎?
  • python matplotlib工具欄源碼探析三之添加、刪除自定義工具項的案例詳解
  • 詳解Python遍歷列表時刪除元素的正確做法
  • Python列表元素刪除和remove()方法詳解
  • 教你怎么用python刪除相似度高的圖片

標(biāo)簽:西寧 錫林郭勒盟 昆明 懷化 梅州 浙江 石家莊 文山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python中刪除文件的幾種方法實例》,本文關(guān)鍵詞  Python,中,刪除,文件,的,幾種,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python中刪除文件的幾種方法實例》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python中刪除文件的幾種方法實例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章