只是想设置Excel工作簿的编码来保存数据。所有数据都存储在 pandas 数据框中。
代码如下:
file_name = "bobs_burgers"
with pd.ExcelWriter(r".\Exported_data\{file_name}.xlsx".format(file_name = file_name),
engine="xlsxwriter",
options={'encoding':'utf-8'}) as writer:
data_table.to_excel(writer, sheet_name = "characters", index = False)
我收到以下错误
TypeError:Workbook.init()得到了意外的关键字参数“encoding”
用google搜索这个,发现大部分关于使用ExcelWriter编码的评论都是
options
的输入。
如何将导出的 pandas 表的编码设置为
utf-8
?
根据 pandas 版本 2 的 ExcelWriter 文档,
**kwargs
已从此类中删除。因此,为了将 options
传递给 ExcelWriter,您需要将其作为键传递给 engine_kwargs
,如下所示:
engine_kwargs = {'options':{'encoding':'utf-8'}}
这是您的代码的修改版本:
file_name = "bobs_burgers"
with pd.ExcelWriter(r".\Exported_data\{file_name}.xlsx".format(file_name = file_name),
engine="xlsxwriter",
engine_kwargs = {'options':{'encoding':'utf-8'}}) as writer:
data_table.to_excel(writer, sheet_name = "characters", index = False)