学院要收集同学们的照片,由于某些原因,我收集到的照片的文件名为同学们的名字,然而学院要求用学号加姓名命名,所以我又来用python偷懒了,虽然debug了一下午。如下:
import pandas as pdimport os
mes=pd.read_excel('rab.xls',header=0)#读取保存同学姓名和学号的文件
path = '截图 - 副本'for root, dirs, files in os.walk(path):#读取路径和文件夹中每一个文件名,files为文件名的组合for i in mes['姓名']: for file in files:#遍历文件名
loc=eval(str(mes['学号'][mes['姓名'].isin([i])])[0:2])#定位姓名所在DataFram中的columnif i in file:#假如姓名和文件名匹配
print(loc,str(mes['学号'][loc]))
newname=str(mes['学号'][loc])+str(file)#学号和旧文件名结合形成新文件名
print(newname)
os.rename(os.path.join(path, file), os.path.join(path, newname))#对文件重命名break