让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
这个错误可能是因为文件本身并不是一个合法的zip压缩文件。一种可能的解决方案是尝试使用其他的pandas引擎来读取Excel文件,例如使用xlrd引擎。另外,还需要确保文件路径和文件名都正确,可以使用os.path.exists()函数来检查文件是否存在。
以下是一个可能的解决方案:
import pandas as pd
import os
fpath = '/path/to/excel/files'
dfs = []
for fname in os.listdir(fpath):
io = os.path.join(fpath, fname)
if os.path.splitext(fname)[-1] in ['.xlsx', '.xls']:
try:
df = pd.read_excel(io, sheet_name="电子配置", header=1, usecols=[0,1,2,3], engine="openpyxl")
except:
df = pd.read_excel(io, sheet_name="电子配置", header=1, usecols=[0,1,2,3], engine="xlrd")
print(df)
dfs.append(df)
result = pd.concat(dfs)
print(result)
print(os.listdir(fpath))
在这个解决方案中,我们首先判断文件是否是Excel文件,然后尝试使用openpyxl引擎读取。如果读取失败,就换用xlrd引擎。最后拼接所有的数据框并打印出来。同时还打印出文件夹中所有的文件名,以便检查文件名是否正确。