登录
首页 >  文章 >  python教程

使用 Pandas 和 glob 导入 Excel 文件时如何解决“Excel 文件格式无法确定”错误?

时间:2024-11-28 12:19:10 383浏览 收藏

在文章实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《使用 Pandas 和 glob 导入 Excel 文件时如何解决“Excel 文件格式无法确定”错误?》,聊聊,希望可以帮助到正在努力赚钱的你。

使用 Pandas 和 glob 导入 Excel 文件时如何解决“Excel 文件格式无法确定”错误?

在使用 pandas 和 glob 导入 excel 文件时的不常见的引擎指定难题

通过 pandas 库和 glob 模块读取 excel 文件时,早期阶段可能出现“excel 文件格式无法确定,您必须手动指定引擎”的错误信息。这个特殊错误的根源在于隐藏的临时文件 ~$filename.xlsx,当 ms excel 打开 xlsx 文件时会在同一目录中创建。

为了解决这个问题,有两个可行的解决方案:

  1. 关闭打开的所有 excel 文件,并删除所有隐藏的临时文件 (~$filename.xlsx)。随后,代码就可以正常运行,没有任何引擎指定错误。
  2. 明确指定引擎参数。对于大多数 xlsx 文件,openpyxl 引擎是一个很好的选择。但是,如果遇到错误“badzipfile: file is not a zip file”,则需要使用 xlrd 引擎来读取文件。

为了避免此问题,在从文件夹中读取 excel 文件之前,确保关闭所有打开的 excel 文件并删除任何隐藏的临时文件 ~$filename.xlsx。通过遵循这些步骤,可以确保 pandas 和 glob 的无错误导入。

更新的代码:

# 以字符串形式指定引擎
df = pd.read_excel(f, engine="openpyxl").reindex(columns=customer_id).dropna(how='all', axis=1)

# 如果出现 BadZipFile 错误,则使用 xlrd
try:
    df = pd.read_excel(f, engine="openpyxl").reindex(columns=customer_id).dropna(how='all', axis=1)
except BadZipFile:
    df = pd.read_excel(f, engine="xlrd").reindex(columns=customer_id).dropna(how='all', axis=1)

以上就是《使用 Pandas 和 glob 导入 Excel 文件时如何解决“Excel 文件格式无法确定”错误?》的详细内容,更多关于的资料请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>