python根據excel清單對文件批量重命名


簡單且好用,目標是根據圖片名稱中的身份證號,從excel表里查找對應的學院,然后將學院名字加在圖片名稱前。

圖片名稱的前18位是身份證號,截取出來在excel中遍歷,獲取到對應的學院名,對圖片重命名加在前面。

最后結果

用到os,xlrd兩個庫,os自帶,xlrd直接執行命令行pip install xlrd進行安裝。os用於讀取文件名和重命名文件,xlrd用於讀取excel的操作。

xlrd的使用:

https://www.cnblogs.com/zhang-jun-jie/p/9273721.html

 

整個過程代碼如下

import os
import xlrd

dirpath = '/路徑..../目標文件夾'  #存放圖片的文件夾
datapath = '/路徑..../dataset.xlsx'      #excel表路徑

x1 = xlrd.open_workbook(datapath)      #讀取excel
sheet1 = x1.sheet_by_name("Sheet1")    #讀取sheet1

idlist = sheet1.col_values(0)    #存放第一列
xylist = sheet1.col_values(1)    #存放第二列

file_names = os.listdir(dirpath)    #獲取文件夾下所有圖片名稱

for i in file_names:
    id = i[:18]      #截取前18位
    if id in idlist:
        xy = xylist[idlist.index(id)]
        #print(xy)
        os.renames(os.path.join(dirpath, i), os.path.join(dirpath, xy +'-' +i))      #重命名

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM