繁体   English   中英

如何使用 Python 将每个工作表的列名和 output 提取到新的 excel 工作簿?

[英]How to extract column names of each sheet and output to a new excel workbook using Python?

我有以下代码尝试遍历 excel 工作簿的每张工作表,并返回列名,以便我可以将输出保存到新工作簿中,每个工作表中都有相应的选项卡名称和列名

但是,尽管我为它指定了一个循环,但它只返回新工作簿中的选项卡名称,并且列名全部丢失,有人可以建议吗?

 from openpyxl import load_workbook from datetime import date import pandas as pd from datetime import datetime, date, timedelta from pandas import ExcelWriter #import itertools # Declaring the sheet names within workbook sheet_names = ['Input_A','Input_B','Input_C','Input_D'] #Open workbook wb = load_workbook('RS_dataset.xlsx', data_only=True) writer = ExcelWriter('RS_sr_bs_test.xlsx') # Logic - Open workbook, get sheet name, get all column names within the sheet for sheet_name in sheet_names: # Open workbook and get sheet name ws1 = wb.get_sheet_by_name(sheet_name) # Load datasets within workbook df1 = pd.DataFrame() # Define year get_year = date.today().year # Get the previous month past = date.today().replace(day=1) - timedelta(days=1) get_month = past.month # Get the current quarter current_date = datetime.now() current_quarter = round((current_date.month - 1) / 3 + 1) get_quarter = current_quarter # Create a list to store column_names col_names = [] for col_name in ws1.iter_rows(min_row=1, max_row=1, values_only=True): col_names.append(col_name) df1.to_excel(writer, sheet_name) writer.save()

似乎您已经有了工作表名称,并且似乎您只使用单行作为列名,您可以直接从 pandas 读取 excel 文件并获取所需信息。

df = pd.read_excel('RS_dataset.xlsx', sheet_name=None)
sheet_names = ['Input_A','Input_B','Input_C','Input_D']
for sheet in sheet_names:
    if sheet in df.keys():
        col_names = df[sheet].columns.to_list()

        # you can write the col_names now.

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM