You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas调用to_excel()导出.xlsx报UTF-8错误导致保存禁用如何解决

xlsx导出编码报错解决方法

错误原因

xlsx是二进制结构化的Office文件格式,不属于纯文本文件,本身不需要设置UTF-8这类文本编码。pandas的to_excel方法输出xlsx格式时,encoding属于无效参数,强制传入会导致生成的文件结构异常,触发打开时的编码校验错误。

修复步骤

  • 第一步:移除to_excel中的encoding='UTF-8'参数即可,同时不要使用Python内置关键字list作为变量名,避免覆盖内置类型引发其他异常,修改后的代码如下:
import numpy as np
import pandas as pd

data_list = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
a = np.array(data_list)
a = a.reshape(4,4)
tablo = pd.DataFrame(a, index=["a", "b", "c", "d"], columns=["x","y","z","t"])
# xlsx格式无需指定encoding参数
tablo.to_excel("tablo_text.xlsx")
  • 第二步:如果修改参数后仍导出失败,安装xlsx写入依赖库即可:
    执行pip install openpyxl安装pandas默认的xlsx写入引擎,也可以手动指定引擎调用:
tablo.to_excel("tablo_text.xlsx", engine='openpyxl')

补充说明

只有导出csv、txt等纯文本格式文件时,才需要手动传入encoding参数控制文本编码规则。

内容的提问来源于stack exchange,提问作者Meltem Karadağlı

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 10:45:03