使用Python實現(xiàn)文件重命名的三種方法
1. 隨機命名
這個方法是將文件夾中特定類型文件隨機命名,下圖是文件原始名稱

隨機重命名代碼如下:
def fun1(filePath):
"""
重命名函數(shù)fun1
輸入:文件夾路徑
功能:對文件夾中的全部文件進(jìn)行隨機命名
"""
suffix = '.txt' # 設(shè)置后綴,篩選特定文件以更改名稱
for file in os.listdir(filePath):
if file.endswith(suffix):
name = file.split('.')[0]
suffix = file.split('.')[1]
salt = ''.join(random.sample(string.ascii_letters + string.digits, 8)) # 隨機輸出8位由英文字符和數(shù)字組成的字符串
newname = name.replace(name, salt)
os.rename(os.path.join(path, file), os.path.join(path, newname + '.' + suffix))
print("End")重命名效果如下:

2. 基礎(chǔ)名+數(shù)字序號
但是我想將其改成統(tǒng)一的命名,那么就用這種重命名方法
代碼如下:
def fun2(path):
"""
重命名函數(shù)fun2
輸入:文件夾路徑
功能:對某一個文件夾中的某一類文件進(jìn)行統(tǒng)一命名,命名格式為:基礎(chǔ)名+數(shù)字序號
"""
i = 1
suffix = '.txt' # 設(shè)置后綴,篩選特定文件以更改名稱
for file in os.listdir(path):
if file.endswith(suffix):
if os.path.isfile(os.path.join(path, file)):
new_name = file.replace(file, "name_%d" % i + suffix) # 根據(jù)需要設(shè)置基本文件名
os.rename(os.path.join(path, file), os.path.join(path, new_name))
i += 1
print("End")效果如下,可以看到文件被改成了統(tǒng)一名稱 + 數(shù)字序號的格式,當(dāng)然如果你想修改成別的名稱,只需將"name_%d"這一句中紅字替換為自己的名稱即可。

3. 特定字符替換
假如我的文件中都包含相同的字符(如示例中都包含name),但是我想將其更換為別的字符,那么就用這個方法。
代碼如下:
def fun3(filePath, old_text, new_text):
"""
重命名函數(shù)fun3
輸入:文件夾路徑、需替換的字符、替換后字符
功能:對文件名中的特定字符進(jìn)行替換
"""
for i, j, k in os.walk(filePath):
for name in k:
newName = name.replace(old_text, new_text)
name = i + "\\" + name
newName = i + "\\" + newName
os.rename(name, newName)
print("End")效果如下,通過方法3將文件中所有“name”替換為了“名字”

4. 完整代碼
import os
import random
import string
def fun1(filePath):
"""
重命名函數(shù)fun1
輸入:文件夾路徑
功能:對文件夾中的全部文件進(jìn)行隨機命名
"""
suffix = '.txt' # 設(shè)置后綴,篩選特定文件以更改名稱
for file in os.listdir(filePath):
if file.endswith(suffix):
name = file.split('.')[0]
suffix = file.split('.')[1]
salt = ''.join(random.sample(string.ascii_letters + string.digits, 8)) # 隨機輸出8位由英文字符和數(shù)字組成的字符串
newname = name.replace(name, salt)
os.rename(os.path.join(path, file), os.path.join(path, newname + '.' + suffix))
print("End")
def fun2(path):
"""
重命名函數(shù)fun2
輸入:文件夾路徑
功能:對某一個文件夾中的某一類文件進(jìn)行統(tǒng)一命名,命名格式為:基礎(chǔ)名+數(shù)字序號
"""
i = 1
suffix = '.txt' # 設(shè)置后綴,篩選特定文件以更改名稱
for file in os.listdir(path):
if file.endswith(suffix):
if os.path.isfile(os.path.join(path, file)):
new_name = file.replace(file, "name_%d" % i + suffix) # 根據(jù)需要設(shè)置基本文件名
os.rename(os.path.join(path, file), os.path.join(path, new_name))
i += 1
print("End")
def fun3(filePath, old_text, new_text):
"""
重命名函數(shù)fun3
輸入:文件夾路徑、需替換的字符、替換字符
功能:對文件名中的特定字符進(jìn)行替換
"""
for i, j, k in os.walk(filePath):
for name in k:
newName = name.replace(old_text, new_text)
name = i + "\\" + name
newName = i + "\\" + newName
os.rename(name, newName)
print("End")
if __name__ == '__main__':
path = r'E:\pythonProject\utiltools/'
# fun1(path)
# fun2(path)
fun3(path, 'name', '名字')到此這篇關(guān)于使用Python實現(xiàn)文件重命名的三種方法的文章就介紹到這了,更多相關(guān)Python文件重命名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python使用vllm處理多模態(tài)數(shù)據(jù)的預(yù)處理技巧
Python程序中用csv模塊來操作csv文件的基本使用教程
Python機器學(xué)習(xí)NLP自然語言處理基本操作新聞分類
使用Python腳本將文字轉(zhuǎn)換為圖片的實例分享

