Python實(shí)現(xiàn)批量文件自定義命名
背景
有時(shí)候我們經(jīng)常需要對(duì)某一個(gè)文件夾中的文件進(jìn)行重命名修改,但是我們一個(gè)一個(gè)取修改將會(huì)非常繁瑣,所以我們可以先創(chuàng)建一個(gè)Excel,其中有兩列,
一列表示【源文件名】;一列表示【新文件名】
A列【源文件名】如下粘貼至A列【源文件名】
B列【新文件名】自己寫
項(xiàng)目目錄
1、文件夾【數(shù)據(jù)源】:存放待改名的文件
2、文件夾【改名規(guī)則】:就是上面那張表
3、文件夾【修改后】:存放修改好的文件
庫(kù)的介紹
shutil 是 Python 的一個(gè)標(biāo)準(zhǔn)庫(kù)模塊,提供了許多高級(jí)的文件操作功能。這些功能包括復(fù)制、移動(dòng)、刪除以及修改文件和目錄等。shutil 模塊的設(shè)計(jì)目的是簡(jiǎn)化文件管理任務(wù)
庫(kù)的安裝
庫(kù) | 用途 | 安裝 |
---|---|---|
pandas | 讀取Excel | pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple/ |
os | 獲取絕對(duì)路徑 | 內(nèi)置庫(kù)無(wú)需安裝 |
os | 操作文件 | 內(nèi)置庫(kù)無(wú)需安裝 |
核心代碼
新 \ 舊 文件名 映射表 讀取
df = pd.read_excel(rules_folder+os.listdir(rules_folder)[0])
文件移動(dòng) \ 復(fù)制
shutil.move(old_file_path, new_file_path)
完整代碼
# -*- coding: UTF-8 -*- ''' @Project :文件自定義命名 @File :文件重命名.py @IDE :PyCharm @Author : @Date :2024/11/12 17:57 ''' import os import pandas as pd import shutil # 定義文件夾路徑 source_folder = '數(shù)據(jù)源' rules_folder = './改名規(guī)則/' target_folder = '修改后' # 創(chuàng)建目標(biāo)文件夾,如果不存在 os.makedirs(target_folder, exist_ok=True) # 讀取Excel文件,假設(shè)文件名為"rename_rules.xlsx" df = pd.read_excel(rules_folder+os.listdir(rules_folder)[0]) # 遍歷Excel的每一行 for index, row in df.iterrows(): old_name = row['源文件名'] new_name = row['新文件名'] # 構(gòu)建源文件的完整路徑 old_file_path = os.path.join(source_folder, old_name) # 檢查源文件是否存在 if os.path.isfile(old_file_path): # 構(gòu)建新的文件路徑 new_file_path = os.path.join(target_folder, new_name) # 移動(dòng)并重命名文件 shutil.move(old_file_path, new_file_path) print(f"文件 '{old_name}' 已重命名為 '{new_name}' 并移動(dòng)至文件夾【修改后】。") else: print(f"文件 '{old_name}' 未找到,保留在文件夾【數(shù)據(jù)源】。") print("文件重命名和移動(dòng)操作完成!")
進(jìn)階版(GUI打包版本)
到此這篇關(guān)于Python實(shí)現(xiàn)批量文件自定義命名的文章就介紹到這了,更多相關(guān)Python文件自定義命名內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python中循環(huán)后使用list.append()數(shù)據(jù)被覆蓋問(wèn)題的解決
這篇文章主要給大家介紹了關(guān)于Python中循環(huán)后使用list.append()數(shù)據(jù)被覆蓋問(wèn)題的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07python django集成cas驗(yàn)證系統(tǒng)
cas是什么東西就不多說(shuō)了,簡(jiǎn)而言之就是單點(diǎn)登陸系統(tǒng),一處登陸,全網(wǎng)有權(quán)限的系統(tǒng)均可以訪問(wèn)2014-07-07Python之Selenium自動(dòng)化瀏覽器測(cè)試詳解
這篇文章主要為大家詳細(xì)介紹了Python自動(dòng)化瀏覽器測(cè)試,使用Selenium,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-01-01Python Pandas Dataframe.describe()使用及代碼實(shí)例
這篇文章主要介紹了Python Pandas Dataframe.describe()使用及代碼實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09python+openCV調(diào)用攝像頭拍攝和處理圖片的實(shí)現(xiàn)
這篇文章主要介紹了python+openCV調(diào)用攝像頭拍攝和處理圖片的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Python學(xué)習(xí)筆記之解析json的方法分析
這篇文章主要介紹了Python解析json的方法,結(jié)合實(shí)例形式分析了常見(jiàn)的Python解析與轉(zhuǎn)換json格式數(shù)據(jù)相關(guān)操作技巧,需要的朋友可以參考下2017-04-04