對于Python文件的操作,復制目錄是非常常見的需求。下面我們來詳細了解一下Python復制目錄的相關操作。
import os import shutil # 定義復制文件夾的函數 def copy_directory(source_directory, target_directory): # 判斷目標路徑是否存在,不存在則創建該路徑 if not os.path.exists(target_directory): os.mkdir(target_directory) # 獲取源文件夾中文件的相對路徑,并在目標文件夾中創建相同的文件夾 for files in os.listdir(source_directory): source_path = os.path.join(source_directory, files) target_path = os.path.join(target_directory, files) # 判斷源文件是否為文件夾,如果是文件夾,則遞歸調用復制文件夾函數 if os.path.isdir(source_path): copy_directory(source_path, target_path) else: shutil.copy(source_path, target_path) # 測試代碼 source_directory = "./source_directory" target_directory = "./target_directory" copy_directory(source_directory, target_directory)
通過上述代碼,我們可以很清晰地發現,Python復制目錄的實現需要用到os和shutil兩個庫。
其中,os庫可以用于文件和文件夾的操作,如判斷路徑是否存在,創建文件夾等;而shutil庫可以用于文件和文件夾的復制、移動等常見操作。
具體而言,在實現復制目錄的函數中,我們首先需要判斷目標路徑是否存在,如果不存在則需要創建該路徑。然后我們通過os.listdir()函數獲取源文件夾中文件的相對路徑,并在目標文件夾中創建相同的文件夾。在對源文件進行復制時,我們通過shutil.copy()函數實現。
最后,通過測試代碼我們可以看到,我們完美地實現了Python復制目錄的相關操作。