一、準備工作
在進行批量重命名之前,我們需要先準備好一些工作。
首先,我們需要導入os模塊,使用該模塊中的函數進行文件操作。
import os
其次,我們需要確定待重命名的目錄。可以使用os.chdir()函數切換到該目錄下,這樣後面的操作就默認在該目錄下進行。
os.chdir('/path/to/your/directory')
最後,為了避免操作錯誤,我們可以先輸出該目錄下的所有文件夾名稱,檢查是否正確。
print(os.listdir())
二、批量重命名
有了準備工作後,就可以進行批量重命名了。
首先,我們需要使用os.listdir()函數獲取該目錄下所有文件夾的名稱,並進行循環遍歷。
for foldername in os.listdir():
# 對每個文件夾的名稱進行處理
接著,我們需要使用os.path.join()函數獲取每個文件夾的完整路徑,並使用os.rename()函數進行重命名。
for foldername in os.listdir():
# 對每個文件夾的名稱進行處理
os.rename(os.path.join(os.getcwd(), foldername), os.path.join(os.getcwd(), new_foldername))
其中,new_foldername是我們要進行重命名後的新名稱,可以根據需要進行修改。
三、修改文件夾名稱的規則
文件夾名稱的修改可以根據需求進行自定義,下面提供幾種常用的規則作為示例。
1. 添加前綴或後綴
可以使用字元串拼接的方法,在原名稱的前面或後面添加一定的前綴或後綴。
for foldername in os.listdir():
new_foldername = 'prefix-' + foldername # 添加前綴
os.rename(os.path.join(os.getcwd(), foldername), os.path.join(os.getcwd(), new_foldername))
for foldername in os.listdir():
new_foldername = foldername + '-suffix' # 添加後綴
os.rename(os.path.join(os.getcwd(), foldername), os.path.join(os.getcwd(), new_foldername))
2. 替換部分字元串
可以使用字元串的replace()方法,替換掉名稱中的一些部分字元串。
for foldername in os.listdir():
new_foldername = foldername.replace('old_string', 'new_string') # 替換字元串
os.rename(os.path.join(os.getcwd(), foldername), os.path.join(os.getcwd(), new_foldername))
3. 按照規律重命名
可以使用字元串格式化的方法,按照一定的規律進行重命名。
for i, foldername in enumerate(os.listdir()):
new_foldername = 'new_name_{:02d}'.format(i+1) # 按照規律重命名
os.rename(os.path.join(os.getcwd(), foldername), os.path.join(os.getcwd(), new_foldername))
上述代碼中,使用了enumerate()函數獲得每個文件夾的序號i,然後使用字元串格式化,生成新的名稱。
四、注意事項
在進行目錄重命名時,需要注意以下幾點:
1. 文件夾的名稱不可重複,否則會提示錯誤。
2. 確保操作前備份重要文件,以免出現意外情況。
3. 執行操作前測試代碼,避免出現不可預料的錯誤。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/239546.html