我有大量必须加载的 .xlsm 文件。每个 Excel 文件有 6 个工作表。因此,我使用 pandas 打开每个 Excel 文件:
for excel_file in files_list:
with pd.ExcelFile(excel_file, engine = "openpyxl") as f:
df1 = pd.read_excel(f, "Sheet1")
df2 = pd.read_excel(f, "Sheet2")
df3 = pd.read_excel(f, "Sheet3")
...
Run Code Online (Sandbox Code Playgroud)
每次迭代之后,我将 df 传递给其他函数并用它做一些事情。我习惯pd.ExcelFile将文件加载到内存中一次,然后将其分离到 DataFrame 上。
但是,执行此操作时,我收到以下警告:
/opt/anaconda3/lib/python3.8/site-packages/openpyxl/worksheet/_reader.py:300: UserWarning: Data Validation extension is not supported and will be removed
warn(msg)
Run Code Online (Sandbox Code Playgroud)
无论警告如何,信息都会从 Excel 文件中正确加载,并且不会丢失任何数据。将每个 Excel 文件及其所有工作表加载到 df 中大约需要 0.8 秒。如果我使用 pandas 上的默认引擎来加载每个 Excel 文件,警告就会消失,但每个文件所需的时间会增加到 5 甚至 6 秒。
我看到了这篇文章,但没有关于如何删除警告的答案,这正是我所需要的,因为一切正常。
我怎样才能禁用所述用户警告?