在python的開發過程中,我們經常需要創建、刪除和修改文件。其中,刪除文件這一功能在有些情況下顯得尤為重要。Python 3中提供了刪除文件的實現方法, 本文將圍繞
Python 3刪除文件的實現方法
這一主題,從多個方面進行詳細闡述。
一、os模塊實現刪除文件
os模塊(即操作系統模塊)是python基礎庫中提供的對操作系統進行訪問接口的模塊。os模塊提供了很多操作文件的方法,其中之一就是刪除文件的方法。
import os try: os.remove('file_path') except Exception as e: print(str(e))
使用os.remove()可以刪除指定路徑下的文件。上述代碼中的’file_path’需要被用戶指定為要刪除的文件的路徑。此外,為了防止意外刪除,我們在刪除操作外部使用try…except語句來捕捉異常。
二、shutil模塊實現刪除文件
shutil(即shell utility)模塊是python的高級文件操作模塊,可以實現文件的複製、移動、刪除、重命名等操作。如果你需要後續處理多個文件,那麼使用shutil模塊刪除文件可能是更好的選擇。
import shutil try: shutil.rmtree('dir_path') except Exception as e: print(str(e))
執行shutil.rmtree()方法,即可遞歸刪除指定目錄下的所有文件和文件夾.需要被刪除的文件或文件夾路徑需要被用戶指定
三、使用pathlib模塊實現刪除文件
pathlib模塊是python新引入的模塊,可用於文件系統路徑和文件查找、操作。
import pathlib my_file_path = pathlib.Path("file_path") if my_file_path.is_file(): try: my_file_path.unlink() except Exception as e: print(str(e)) elif my_file_path.is_dir(): try: shutil.rmtree(str(my_file_path)) except Exception as e: print(str(e)) else: print("Path does not exist.")
上述代碼中,先創建一個Path變量“my_file_path”,並將要刪除的文件路徑傳遞給它。按照前面的兩種方式,使用is_file()方法判斷my_file_path是否是文件,如果是,使用unlink()方法刪除;如果my_file_path是一個目錄,則使用shutil.rmtree()方法。
四、刪除指定擴展名的文件
當我們需要一次性刪除指定擴展名的多個文件時,可以使用glob模塊實現。
import glob, os files = glob.glob('/path/*.txt') # 匹配目錄下所有txt文件 for f in files: os.remove(f)
以上示例代碼中,glob.glob()方法用來獲取指定目錄下所有擴展名為.txt的文件。之後,使用os.remove()方法依次刪除所匹配的文件。當然了,如果要刪除其他類型的文件(例如.png、.jpg等),只需在.glob()中進行修改即可。
總結
刪除文件是一個很常用的操作,本文介紹了Python 3中三種實現刪除文件的方法:os模塊、shutil模塊和pathlib模塊。同時,我們還介紹了一種可以刪除特定類型文件的方法——使用glob模塊。讀者可根據需要進行選擇,選擇最適合自己需求的目錄刪除方式。
原創文章,作者:WETW,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/138174.html