您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么用Python一鍵修改上萬個文件名”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么用Python一鍵修改上萬個文件名”吧!
import os
import re
import time
"""對指定目錄下的所有文件進行有選擇的修改名稱"""
def ReFileName(dirPath,pattern):
"""
:param dirPath: 文件夾路徑
:param pattern: 正則匹配模式
:return:
"""
# 對目錄下的文件進行遍歷
for file in os.listdir(dirPath):
# 判斷是否是文件
if os.path.isfile(os.path.join(dirPath, file)) == True:
# 用正則匹配,去掉不需要的詞
newName = re.sub(pattern, "", file)
# 設置新文件名
newFilename = file.replace(file, newName)
# 重命名
os.rename(os.path.join(dirPath, file), os.path.join(dirPath, newFilename))
print("文件名已統一修改成功")
if __name__ == '__main__':
timeStart = time.time()
dirPath = r"F:\test"
pattern = re.compile(r'\[{1}(.+)]\.')
ReFileName(dirPath,pattern)
timeEnd = time.time()
print("程序走了%d秒"%(timeEnd-timeStart))
代碼簡要說明一下:
1. 因為這里需求只是簡單的修改文件名,所以小伙伴們千萬不要用open()……這種方法,雖然它也是可以的,但是因為文件太多,讀寫太慢,時效極低。
2. 還有需要替換或者提取的文件名,不僅限于圖中所示,你可以靈活運用正則表達式來達到自己的需求。
再看程序運行時間:
"""獲取當前目錄下的信息"""def ReFileName1(dirPath): for root, dirs, files in os.walk(dirPath): print(root) # 當前目錄路徑 print(dirs) # 當前路徑下所有子目錄 print(files) # 當前路徑下所有非目錄子文件
感謝各位的閱讀,以上就是“怎么用Python一鍵修改上萬個文件名”的內容了,經過本文的學習后,相信大家對怎么用Python一鍵修改上萬個文件名這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。