python 读取Excel,给文件夹中的文件批量改名字

import os
import shutil
import pandas as pd
import re

# 定义变量:excel 文件
excelname = r'E:\aaa.xls'
# pdf文档所在的目录
dirPath = r'E:/重命名前/'

def rename_according_to_xlsx(excelname, dirPath):
    data = pd.read_excel(excelname, sheet_name='Sheet1')  # 读取同一个表格中指定 Sheet1 中的数据,不指定时直接默认读取到这个Excel的第一个表单
    print(data)
    # 遍历该文件夹所有的文件,并for循环
    for name in os.listdir(dirPath):
        # print(name)
        name1 = re.sub(r'\d+', '', name)
        # print(name)
    #     # 文件名加上文件夹构成绝对路径
        before_file = os.path.join(dirPath, name)
        # print(before_file)
    #     # 获取当前文件名所在行
        name1 = name1[0:name1.find(".")]
        print(name1)
        index = data.loc[data['oldname'] == name1]
        print("2=", index)
    # #     # 当前文件所对应的新名称
        new_name = index['newname'].values
        print(new_name)
        # print(new_name[0])
    # #
        if len(new_name):
    # #         # index['code'].values 为当前文件名所对应的新名称
            after_file = os.path.join(dirPath, new_name[0])
    # #
    # #         # 利用shutil.move将文件移动到原来位置(重命名的效果)
            shutil.move(before_file, after_file)
        else:
            break
    print("根据excel内容所有文件名称修改完成!!!")

if __name__ == '__main__':
    rename_according_to_xlsx(excelname,dirPath)

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值