我希望能夠獲取一個檔案并將其復制到具有不同名稱的同一目錄中,但我不知道如何在復制時更改名稱,因此它不會給我和檔案已經存在的錯誤或更改原始檔案的名稱。
uj5u.com熱心網友回復:
如果您指定目標檔案名和目標檔案夾, shutil.copy()可以做到這一點:
import shutil
shutil.copy(r'c:\temp\file1.txt', r'c:\temp\file2.txt')
uj5u.com熱心網友回復:
添加到 TessellatingHeckler 的答案,如果您有一個帶有任意目錄的檔案,您可以使用os.path.dirname和os.path.join在同一目錄中創建一個新檔案名:
import os
import shutil
original = r'c:\temp\file1.txt'
original_dir = os.path.dirname(original) # r'c:\temp'
new_name = 'file2.txt'
new_path = os.path.join(original_dir, new_name) # r'c:\temp\file2.txt'
shutil.copy(original, new_path)
如果您愿意,您當然可以更緊湊地執行此操作。您還會從 shutil.copy() 檔案中注意到,shutil 具有多種不同的復制方法,每種方法各有利弊。例如,shutil.copy2()嘗試保留元資料。由您決定哪種方法最適合您的情況。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/416265.html
標籤:
