首页 > 编程语言 >Python自动化办公对每个子文件夹的Excel表加个表头(Excel不同名)(上篇)

Python自动化办公对每个子文件夹的Excel表加个表头(Excel不同名)(上篇)

时间:2023-05-22 23:44:33浏览次数:59  
标签:表加个 excel glob 路径 Excel 表头 文件夹 os

大家好,我是皮皮。

一、前言

上一篇文章,我们抛出了一个问题,这篇文章来进行解答。如果针对子文件夹下不同的Excel表名,应该如何处理?

二、实现过程

我们继续问ChatGPT,它给出了一个方法,如下所示:

提问如下:假如你是一名Python程序员,现在你有一个自动化办公的需求,你桌面上有一个新建文件夹,该文件夹下的每一个子文件夹里面都有不同的Excel表,你如何写代码,获取到子文件夹内的所有Excel表格路径。

可以使用Python的os模块和glob模块来获取文件夹下的所有Excel表格路径。

首先,需要导入这两个模块:

import os
import glob

然后,可以使用os模块的listdir()函数获取文件夹下的所有子文件夹,再使用glob模块的glob()函数获取所有Excel表格的路径。具体代码如下:

import os
import glob

# 定义文件夹路径
folder_path = r"文件夹路径"

# 获取所有子文件夹路径
subfolders = [f.path for f in os.scandir(folder_path) if f.is_dir()]

# 获取每个子文件夹中的所有Excel表格路径
excel_paths = []
for subfolder in subfolders:
    excel_paths.extend(glob.glob(subfolder + "/*.xlsx"))

在上述代码中,首先定义了文件夹路径。然后使用os.scandir()函数获取该文件夹下的所有子文件夹路径。接下来,遍历每个子文件夹,使用glob模块的glob()函数获取该子文件夹中所有Excel表格的路径,然后将这些路径添加到一个列表中。最终,列表excel_paths中存储了所有Excel表格的路径。

希望这个代码可以满足您的需求!

这个提问其实没提问的太好,不过所幸的是它确实提供了一个思路,那么根据这个思路,我们自己手动修改下代码,也是可以实现的,修改后的完整代码,如下所示:

import os
import pandas as pd
import glob

# 定义文件夹路径
folder_path = r"C:\Users\pdcfi\Desktop\新建文件夹"

# 获取文件夹下的所有子文件夹
subfolders = [f.path for f in os.scandir(folder_path) if f.is_dir()]

excel_paths = []
# 遍历每个子文件夹
for subfolder in subfolders:
    # 获取Excel文件路径
    # excel_file = os.path.join(subfolder, "Excel表名.xlsx")
    excel_paths.extend(glob.glob(subfolder + "/*.xlsx"))

for excel_file in excel_paths:
    # 读取Excel文件
    df = pd.read_excel(excel_file, header=None)

    # 添加表头
    df.columns = ["经度", "纬度"]

    # 保存Excel文件
    df.to_excel(excel_file, index=False)

这样的话,子文件夹下的所以Excel文件都可以增加表头。

image.png

那么ChatGPT能不能一步给我到位呢?答案是肯定的,下篇文章将给大家呈现出来。

三、总结

大家好,我是皮皮。这篇文章主要盘点了一个Python自动化办公处理的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

最后感谢粉丝【彩】提问,感谢【ChatGPT】给出的思路和代码解析,感谢【冫马讠成】等人参与学习交流。

【提问补充】温馨提示,大家在群里提问的时候。可以注意下面几点:如果涉及到大文件数据,可以数据脱敏后,发点demo数据来(小文件的意思),然后贴点代码(可以复制的那种),记得发报错截图(截全)。代码不多的话,直接发代码文字即可,代码超过50行这样的话,发个.py文件就行。

image.png

标签:表加个,excel,glob,路径,Excel,表头,文件夹,os
From: https://www.cnblogs.com/dcpeng/p/17422072.html

相关文章

  • 1千小学必知百科知识题库ACCESS\EXCEL数据库
    《小学必知百科知识题库ACCESS数据库》主要针对小学阶段的内容编制。通过智力问答的形式,将不同科目的知识串联起来,让知识通过你问我答的形式记忆的更加深刻。每天随机问孩子十个问题,不需多久孩子的知识面就丰富很多。分类情况为:地理(共217条)、科学(共203条)、历史(共178条)、社会(共13......
  • 关于Excel表格中对多个General或者Number数值格式的单元转换为Text文本时-值包含E+的
    对于单元格的值为默认的General或者Number数字时,我们可以直接选中,单元格,或者某个范围,可以直接将上面的格式处选择为Text这样就完成了一次格式转换,如下默认是General普通格式,我们直接就将其转换成Text文本格式不过只有当我们将鼠标双击一下单元格式,才会看到左上角看到熟悉的Text......
  • 500多条汉字常见错别字题库ACCESS\EXCEL数据库
    之前发过一个叫《汉字英雄100个最容易错误的汉字》的ACCESS数据库,严格的说这个数据库不算题库,因为没有选项;而今天的这个《汉字常见错别字题库ACCESS数据库》却是有选项的题库:这些题目出自历届高考的易错字大全。想测试下自己的语文功力吗?想提高自己的汉语水平吗?还在等什么,快来试......
  • 819古玩文物鉴赏ACCESS\EXCEL数据库
    古玩,又称文物、骨著等,被视做人类文明和历史的缩影,融合了历史学、方志学、金石学、博物学、鉴定学及科技史学等知识内涵。《古玩文物鉴赏ACCESS数据库》包含了:陶瓷、翡翠、书画、青铜器、紫砂壶、雕品、钱币、家具、奇石等等。希望对您在古玩方面提供一定的参考价值。古......
  • 9万多条执业医师资格考试题库ACCESS\EXCEL数据库
    《9万多条执业医师资格考试题库ACCESS数据库》搜集了大量执业医师资格考试试题,包括临床执业医师资格考试试题、口腔执业医师资格考试试题、中医执业医师资格考试试题、中西医结合执业医师资格考试试题、公卫执业医师资格考试试题等。分类情况包含:临床执业医师(22428条)、口腔执业......
  • 在DevExpress中使用BandedGridView表格实现多行表头的处理
    在之前较早随笔中介绍过实现多行表头的处理,通过手工创建字段以及映射数据源字段属性的方式实现,有些客户反映是否可以通过代码方式更方便的创建对应的处理操作,因此本篇随笔继续探讨这个多行表头的处理的操作,使用代码的方式结合扩展函数处理,快速的实现GridControl的多行表头的处理操......
  • 1万多条司法资格考试题库ACCESS\EXCEL数据库
    《1万多条司法资格考试题库ACCESS版》搜集了大量司法资格考试试题,包括试卷一、试卷二、试卷三、试卷四等科目。同类的数据库有《9万多条执业医师资格考试题库ACCESS数据库》、《6万多条会计从业资格考试题库ACCESS版》、《近7万多条证券从业资格考试题库ACCESS版》、《1万多条一级......
  • excel给一列数据统一拼接某字符
    转自:https://zhidao.baidu.com/question/698143674710206804.html 使用&符号在一列数字后统一加上几个字符。1、以excel2010版本为例,如下图要在A列数据后面加上“元整”两个字; 2、首先在B列填上“元整”两个字符,可以先在B2单元格输入这两字,然后下拉填充则可; 3、在C2单......
  • easyExcel读写入csv文件
    写入:Filefile=newFile(System.getProperty("java.io.tmpdir")+File.separator+"aa.csv");ExcelWriterexcelWriter=EasyExcelFactory.write(file).excelType(ExcelTypeEnum.CSV).charset(Charset.forName("GBK"))......
  • POI 设置Excel单元格背景色
    背景介绍:使用Java开发信息系统项目,项目中往往会涉及到报表管理部分,而Excel表格首当其冲称为最合适的选择,但是对单元格操作时对于设置单元格的背景颜色却很少提及,本文旨在方便单元格背景颜色设计。操作:至于冗长的创建表格表格设置的代码相信大家都已经了解。直接进行单元格背景颜色......