您好,登錄后才能下訂單哦!
這篇“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)
參數
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
是我們要刪除的文件的完整路徑。
示例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_errors
為true
,則刪除失敗導致的錯誤將被忽略。
oneerror
:如果ignore_errors
為false
或被忽略,則通過調用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中如何刪除文件”這一關鍵問題有了一定的理解,具體使用情況還需要大家自己動手實驗使用過才能領會,快去試試吧,如果想閱讀更多相關知識點的文章,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。