如何处理警告:“工作簿不包含默认样式,请应用 openpyxl 的默认样式”

Phi*_*ppe 15 python pandas openpyxl

我有-current-最新版本的pandas、openpyxl、xlrd。

openpyxl:3.0.6。
熊猫:1.2.2。
xlrd:2.0.1。

我有一个生成的 excel xlsx- 文件(从网络应用程序导出)。
我在熊猫中读到它:

myexcelfile = pd.read_excel(easy_payfile, engine="openpyxl")
Run Code Online (Sandbox Code Playgroud)

一切顺利,我可以成功读取文件。
但我确实收到了一个丑陋的警告:

/Users/*******/projects/environments/venv/lib/python3.8/site-packages/openpyxl/styles/stylesheet.py:214: UserWarning: Workbook contains no default style, apply openpyxl's default
  warn("Workbook contains no default style, apply openpyxl's default")
Run Code Online (Sandbox Code Playgroud)

文档并没有对此进行太多说明。有什么办法可以添加一个选项来避免此警告。我宁愿不压制它。

谢谢!

ruh*_*art 28

我认为图书馆没有openpyxl为您提供禁用它的方法。您将需要warnings直接使用该包。

该问题的一个简单而及时的解决方案是:

import warnings

with warnings.catch_warnings():
    warnings.simplefilter("ignore")
    myexcelfile = pd.read_excel(easy_payfile, engine="openpyxl")
Run Code Online (Sandbox Code Playgroud)


nev*_*ves 7

@ruhanbidart解决方案比我的更好,因为您只为调用 read_excel 关闭警告,但如果您有数十次调用pd.read_excel,您可以简单地禁用所有警告:

import warnings
warnings.simplefilter("ignore")
Run Code Online (Sandbox Code Playgroud)

我知道这不是一个好的编程实践,但它可以帮助清理你的输出。


tai*_*ger 5

我也有同样的警告。我刚刚将 Excel 文件的工作表名称从“sheet_1”更改为“Sheet1”,然后警告就消失了。我认为 pandas 应该稍后修复这个警告。