首页 > 解决方案 > 我可以在不预先创建工作簿对象的情况下创建 Python Pandas ExcelWriter 格式吗?

问题描述

我想在 Pandas 中为 ExcelWriter 创建一个固定格式,我可以在许多脚本中使用它,而无需每次都编写它。我知道我可以创建一个格式:

import pandas as pd
writer = pd.ExcelWriter('demo.xlsx', engine='xlsxwriter')
workbook = writer.book
num_fmt = workbook.add_format({'num_format': '#,##0.0'})

然后使用num_fmt

worksheet.set_column('H:H', 8, num_fmt)

但我正在寻找一种方法来避免在我编写的每个脚本中重新定义num_fmt。我有一个名为我导入到每个脚本的自定义包my_pack,我想以某种方式num_fmt 在那里定义,所以我可以像这样使用它:

worksheet.set_column('H:H', 8, my_pack.num_fmt)

没有num_fmt在当前脚本中定义。那可能吗?

标签: pythonpandasformatxlsxwriter

解决方案


我有一个名为 my_pack 的自定义包,我将其导入到每个脚本中,并且我想以某种方式在其中定义 num_fmt ...而不在当前脚本中定义 num_fmt 。那可能吗?

不,不是 XlsxWriter。

您需要从 Workbook 对象实例化格式,并且它对每个工作簿都是唯一的,因此您将无法创建一次、存储它,然后在不同的工作簿中重复使用它。


推荐阅读