如何使用Python一鍵修改上萬個(gè)文件名
一、頭疼的修改文件名,我是傻了
同事問我會(huì)不會(huì)改目錄下的文件名,我大叫一聲:你傻呀,你不會(huì)右鍵重命名呀呀,或者按 F2快捷鍵,但是當(dāng)我解壓完同事的目錄后,人都傻了,自己看圖哈!!
偷偷告訴你,這樣的文件有一大堆,如果你右鍵估計(jì)一天才能搞定,頓時(shí)我就不敢出聲了。
先看同事的需求是什么:幫他去掉類似 **[圖靈程序設(shè)計(jì)叢書].**的詞,只留下書名
看到這,請(qǐng)問小伙伴們你是怎么解決的,歡迎留言一起吐槽,哈哈哈哈哈哈。
二、茅塞頓開,秒解決同事問題
在我思考如何解決同事這個(gè)問題時(shí),我的腦海中突然靈光一閃,之前寫過一鍵修改圖片大小的程序,那我為何不也寫個(gè)程序直接一鍵修改文件名呢!?。≌f干就干
考慮到時(shí)效性,我用了Python來寫這個(gè)小程序,歡迎留言交流你的程序:上代碼 -->
import os import re import time """對(duì)指定目錄下的所有文件進(jìn)行有選擇的修改名稱""" def ReFileName(dirPath,pattern): """ :param dirPath: 文件夾路徑 :param pattern: 正則匹配模式 :return: """ # 對(duì)目錄下的文件進(jìn)行遍歷 for file in os.listdir(dirPath): # 判斷是否是文件 if os.path.isfile(os.path.join(dirPath, file)) == True: # 用正則匹配,去掉不需要的詞 newName = re.sub(pattern, "", file) # 設(shè)置新文件名 newFilename = file.replace(file, newName) # 重命名 os.rename(os.path.join(dirPath, file), os.path.join(dirPath, newFilename)) print("文件名已統(tǒng)一修改成功") 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.因?yàn)檫@里需求只是簡單的修改文件名,所以小伙伴們千萬不要用open()……這種方法,雖然它也是可以的,但是因?yàn)槲募啵x寫太慢,時(shí)效極低。
2. 還有需要替換或者提取的文件名,不僅限于圖中所示,你可以靈活運(yùn)用正則表達(dá)式來達(dá)到自己的需求。
看效果:
再看程序運(yùn)行時(shí)間:
此處是不是應(yīng)該要有個(gè)贊,哈哈哈哈!趕快動(dòng)起來吧?。。?!
這里還分享一個(gè)干貨給小伙伴們哈?。?/strong>
python獲取當(dāng)前目錄下的一些信息---->
"""獲取當(dāng)前目錄下的信息""" def ReFileName1(dirPath): for root, dirs, files in os.walk(dirPath): print(root) # 當(dāng)前目錄路徑 print(dirs) # 當(dāng)前路徑下所有子目錄 print(files) # 當(dāng)前路徑下所有非目錄子文件
總結(jié)
到此這篇關(guān)于如何使用Python一鍵修改上萬個(gè)文件名的文章就介紹到這了,更多相關(guān)Python一鍵修改文件名內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python如何telnet到網(wǎng)絡(luò)設(shè)備
這篇文章主要介紹了Python如何telnet到網(wǎng)絡(luò)設(shè)備,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2021-02-02Pandas中如何對(duì)DataFrame列名進(jìn)行重命名
在做數(shù)據(jù)挖掘的時(shí)候,想改一個(gè)DataFrame的column名稱,所以就查了一下,下面這篇文章主要給大家介紹了關(guān)于Pandas中如何對(duì)DataFrame列名進(jìn)行重命名的相關(guān)資料,需要的朋友可以參考下2023-04-04python調(diào)用自定義函數(shù)的實(shí)例操作
在本文里我們給大家整理了關(guān)于python調(diào)用自定義函數(shù)的實(shí)例操作相關(guān)內(nèi)容,有此需要的朋友們可以學(xué)習(xí)參考下。2019-06-06利用Python演示數(shù)型數(shù)據(jù)結(jié)構(gòu)的教程
這篇文章主要介紹了利用Python演示數(shù)型數(shù)據(jù)結(jié)構(gòu)的教程,核心代碼其實(shí)只有一行(XD),需要的朋友可以參考下2015-04-04python實(shí)現(xiàn)自動(dòng)解數(shù)獨(dú)小程序
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)自動(dòng)解數(shù)獨(dú)小程序,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01Django --Xadmin 判斷登錄者身份實(shí)例
這篇文章主要介紹了Django --Xadmin 判斷登錄者身份實(shí)例,具有很好的參考價(jià)值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-07-07