当前位置:   article > 正文

获取Excel中sheet页的name,并对不同sheet 页进行处理_excel sheet name

excel sheet name

1、梳理流程思路

  • 首先导入需要调用的模块
  • 其次,打开工作簿,获取工作簿的sheet页名字
  • 读取不同sheet页,做不同的处理
  • 将处理完成的结果,保存下来

2、具体代码实现

  1. import pandas as pd
  2. import xlrd
  3. from openpyxl import load_workbook
  1. file_path=r"E:\\work\\shuju\\源表\\2021年淘客订单汇总表.xlsx"
  2. wb = xlrd.open_workbook(file_path) #打开工作簿
  3. sheets = wb.sheet_names() # 获取工作簿的sheet页名字
  4. print(sheets) # 打印sheet页名字

 可以看出,已经打印出了这个Excel中包含的所有sheet页名字。

接下来使用for来对Excel表进行遍历循环,首先看一下循环打印结果:

  1. # 目的将部分Excel中的数据进行处理
  2. pass_list = ['总表','记-0082','记-0169', '记-0170', '记-0171'] # 将
  3. # 将所有的表进行循环遍历
  4. for i in sheets:
  5. if i not in pass_list:
  6. print(i)
  7. else:
  8. print(i,"not in list")
  9. print("循环结束")

结果显示:

 目的:将指定sheet页的指定列进行拼接

  1. # 目的将部分Excel中的数据进行拼接
  2. pass_list = ['总表','记-0082','记-0169', '记-0170', '记-0171'] # 将
  3. # 将所有的表进行循环遍历
  4. all_data =pd.DataFrame() #首先构建一个空的DataFrame对象,用于存放数据
  5. for i in sheets:
  6. if i not in pass_list:
  7. data = pd.read_excel(file_path ,sheet_name =i)
  8. # print(list(data)) #打印data的列名
  9. if '订单付款时间 ' in list(data):
  10. data=data.rename(columns={'订单付款时间 ': '订单付款时间'}) #由于数据不规范,对数据列名进行规范
  11. Data = data[['订单付款时间','买家会员名']]
  12. print(Data.head())
  13. Data['订单付款时间'] = Data['订单付款时间'].astype(str) #将该字段转为字符串类型
  14. Data['Sheet_name'] = i
  15. all_data = all_data.append(Data)
  16. print("=========")
  17. print("循环结束")

结果输出:

 

  1. out_path =r"E:\\work\\shuju\\源表\\hebing.xlsx" #构建输出表
  2. writer = pd.ExcelWriter(out_path)
  3. all_data .to_excel(writer,sheet_name ='Sheet1',index =False)
  4. writer.save() #保存结果
  5. writer.close()

整个小项目完成~~~~~~~~~~~~~~~~~

学会之后,真的减轻了工作量,大大提高了效率

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/寸_铁/article/detail/768653
推荐阅读
相关标签
  

闽ICP备14008679号