Python 文件的复制重命名以及xlsx文件中表格分开保存

1、需要的头文件
import shutil

import os
import openpyxl
2、复制文件以及重命名

直接使用shutil库复制,重命名,移动即可,函数封装示例:

#source_path 为全局变量被复制文件路径
#destination_path 为全局目标目录
#new_filename 为文件新名字
def copy_and_rename_file(new_filename):
    try:
        # 复制文件
        shutil.copy(source_path, destination_path)
        
        # 构建新文件路径(包括新的文件名)
        new_file_path = f"{destination_path}\\{new_filename}"
        
        # 重命名文件
        shutil.move(f"{destination_path}\\{source_path}", new_file_path)
        
        # print(f"文件已成功复制和重命名为: {new_file_path}")
    except Exception as e:
        print(f"发生错误: {e}")
3、xlsx文件表格分开存储

思路就是将表格文件复制到目标目录,然后保留目标表格,其他表格全部删除,为什么要这样做,不直接创建一个xlsx文件然后写入表格呢?因为无法保留表格结构!这样就可以保留表格结构了,而且很简单。封装函数示例:
 

#file_path 为被分开的xlsx文件路径
#end_number 为别分开的xlsx文件需要分开前end_number个表格
#这里不同的表格保存在不同的路径文件夹里面了
def useCopyToSave(file_path, end_number):
    try:
        # 创建目标目录
        for i in range(0,end_number+1):
            output_directory = f'tabFile{i}\\{destination_path}'
            os.makedirs(output_directory, exist_ok=True)
            shutil.copy(file_path, output_directory)
            outFilePath = f'tabFile{i}\\{file_path}'
            workbook = openpyxl.load_workbook(outFilePath)

            sheet_names = workbook.sheetnames
            for j in range(0,len(sheet_names)-1) :
                if(j != i):
                    sheet = workbook.worksheets[j]
                    workbook.remove(sheet)
            workbook.save(outFilePath)
        print(f"保存完成:{file_path}")
    except Exception as e:
        print(f"发生错误: {e}")

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值