XLSX 转 CSV 并添加列

我有一个函数,它接受 Excel 文件输入并将每个选项卡转换为 CSV 文件。它完美地工作,见下文。


但是,我想向每个 CSV 文件添加一个新列,例如每个带有“日期”列的文件,其中包含今天的日期。我的计划是将 XLSX 加载到数据框,然后在写入 CSV 之前添加列,但是我想知道是否有更优雅的解决方案,因为某些 Excel 文件可以达到数百 MB?


def excel_to_csv(excel_file):

    print("Converting to CSV")

    with xlrd.open_workbook(excel_file) as wb:

        sheets = wb.sheets()

        for sh in sheets:

            save_file = f'{os.path.splitext(excel_file)[0]}_{sh.name}.csv'

            with open(save_file, 'w', newline="") as f:

                c = csv.writer(f)

                for r in range(sh.nrows):

                    print(sh.row_values(r))

                    c.writerow(sh.row_values(r))


慕桂英3389331
浏览 148回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python