gpt4 book ai didi

python - 如果文件在 Excel 中打开,pd.read_excel 会抛出 PermissionError

转载 作者:行者123 更新时间:2023-12-02 02:32:26 31 4
gpt4 key购买 nike

每当我在 Excel 中打开文件并运行代码时,我都会收到以下错误,这很令人惊讶,因为我认为 read_excel 应该是只读操作,并且不需要解锁文件?

    Traceback (most recent call last):
File "C:\Users\Public\a.py", line 53, in <module>
main()
File "C:\Users\Public\workspace\a.py", line 47, in main
blend = plStream(rootDir);
File "C:\Users\Public\workspace\a.py", line 20, in plStream
df = pd.read_excel(fPath, sheetname="linear strategy", index_col="date", parse_dates=True)
File "C:\Users\Public\Continuum\Anaconda35\lib\site-packages\pandas\io\excel.py", line 163, in read_excel
io = ExcelFile(io, engine=engine)
File "C:\Users\Public\Continuum\Anaconda35\lib\site-packages\pandas\io\excel.py", line 206, in __init__
self.book = xlrd.open_workbook(io)
File "C:\Users\Public\Continuum\Anaconda35\lib\site-packages\xlrd\__init__.py", line 394, in open_workbook
f = open(filename, "rb")
PermissionError: [Errno 13] Permission denied: '<Path to File>'

最佳答案

一般来说,Excel 在打开文件时有很多限制(不能打开同一个文件两次,不能打开两个同名的不同文件等)。
我在机器上没有 excel 来测试,但检查文档 read_excel我注意到它允许您设置引擎
从您发布的堆栈跟踪来看,该错误似乎是由 pandas 使用的默认引擎 xlrd 引发的。

尝试使用其他任何一个

Supported engines: “xlrd”, “openpyxl”, “odf”, “pyxlsb”, default “xlrd”.

所以尝试其余的,例如

df = pd.read_excel(fPath, sheetname="linear strategy", index_col="date", parse_dates=True, engine="openpyxl")

我知道这不是真正的答案,但您可能想向 pandas 或 xlrd 团队提交错误报告。

关于python - 如果文件在 Excel 中打开,pd.read_excel 会抛出 PermissionError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35743905/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com