一、檢查文件夾是否存在
在Python中檢查文件夾是否存在的最簡單方法是使用 os 模塊中的 isdir() 函數。isdir() 函數接受一個字符串參數,表示要檢查的文件夾的路徑,並返回一個布爾值,指示該文件夾是否存在。
import os folder_path = "/path/to/folder" if os.path.isdir(folder_path): print("Folder exists!") else: print("Folder does not exist.")
二、遍歷文件夾中的文件
使用 os 模塊中的 listdir() 函數可以列出文件夾中的所有文件和子文件夾。這個函數將返回一個字符串列表,每個字符串表示文件夾中的一個文件或子文件夾。我們可以使用 os.path.join() 函數來連接文件夾路徑和文件名,以創建文件的完整路徑。
import os folder_path = "/path/to/folder" # 列出文件夾中所有的文件和子文件夾 files = os.listdir(folder_path) for file_name in files: full_path = os.path.join(folder_path, file_name) if os.path.isdir(full_path): print("{} is a folder.".format(file_name)) else: print("{} is a file.".format(file_name))
三、遞歸遍歷文件夾中的文件
使用 os 模塊中的 walk() 函數可以遞歸遍歷文件夾中的所有文件和子文件夾。這個函數將返回一個三元素的元組,分別表示當前文件夾的路徑、當前文件夾中的所有子文件夾的名稱、當前文件夾中的所有文件的名稱。
import os folder_path = "/path/to/folder" for root, dirs, files in os.walk(folder_path): print("Current folder: {}".format(root)) for file_name in files: full_path = os.path.join(root, file_name) if os.path.isdir(full_path): print("{} is a folder.".format(file_name)) else: print("{} is a file.".format(file_name))
四、創建文件夾
使用 os 模塊中的 mkdir() 函數可以創建新的文件夾。該函數接受一個字符串參數,表示要創建的文件夾的路徑。我們可以使用 os.path.exists() 函數來檢查文件夾是否已存在。
import os new_folder_path = "/path/to/new/folder" if not os.path.exists(new_folder_path): os.mkdir(new_folder_path) print("Folder created successfully!") else: print("Folder already exists.")
五、刪除文件夾
使用 os 模塊中的 rmdir() 函數可以刪除一個空文件夾。如果要刪除非空文件夾,則需要使用 shutil 模塊中的 rmtree() 函數。
import os import shutil folder_path = "/path/to/folder" if os.path.isdir(folder_path): # 刪除空文件夾 os.rmdir(folder_path) print("Folder deleted successfully!") # 刪除非空文件夾 shutil.rmtree(folder_path) print("Folder deleted successfully!") else: print("Folder does not exist.")
六、判斷文件夾中是否有指定類型的文件
使用 os 模塊中的 listdir() 函數可以列出文件夾中的所有文件和子文件夾。我們可以使用 endswith() 函數來檢查文件的後綴名是否匹配。如果要忽略文件名的大小寫,可以使用 lower() 函數。
import os folder_path = "/path/to/folder" extension = ".txt" for file_name in os.listdir(folder_path): if file_name.lower().endswith(extension): print("{} is a {} file.".format(file_name, extension))
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/301447.html