Pandas ExcelWriter .save() 出错;权限错误 [WinError 32]
Posted
技术标签:
【中文标题】Pandas ExcelWriter .save() 出错;权限错误 [WinError 32]【英文标题】:Error with Pandas ExcelWriter .save(); Permission Error [WinError 32] 【发布时间】:2018-11-02 01:47:10 【问题描述】:我正在尝试使用 ExcelWriter 写出文档并遇到以下问题:
当我运行我的程序时,它有时会给出如下警告:
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'C:\\Users\\...\AppData\\Local\\Temp\\tmpk6915sp2'
据说错误来自ExcelWriter.save()
方法。
我尝试使用ExcelWriter的.close()
方法,但有时问题仍然存在。有时我的意思是,如果我多次重新运行程序,程序就会像没有错误一样运行。
我不明白的是为什么它/有时/仍然存在,我该如何解决?
我遇到了几个相同错误的线程,但它们与 ExcelWriter 无关,希望有人能帮助我。提前致谢!
【问题讨论】:
当错误发生和未发生时,您的路径是否相同?也许您试图访问受管理员保护的文件? 您当时是否有可能在 Excel 中打开了目标文件?这是此类问题的最常见原因。 不,我当时没有打开目标文件。而且,我认为(临时)文件名不同,但目录是相同的。 目前我做的是在我运行程序之前删除临时文件,当问题发生时 你能把你正在使用的代码。尝试在我的计算机上复制它可能会有所帮助,以更好地帮助您。 【参考方案1】:是的,我的最新应用程序(在 Windows 中开发)也遇到了类似的问题。就我而言,如果发生异常,我必须再次重新运行,直到成功。所以我按照下面的sn-p暂时绕过了这种情况。
for count in range(1, 11):
try:
print('[+] Running - '.format(count))
# report creation function goes here
print('[+] Success excel file created.')
break
except Exception as error:
print('[-] Exceptional error - '.format(error))
print('[-] Re-running - '.format(count))
continue
【讨论】:
以上是关于Pandas ExcelWriter .save() 出错;权限错误 [WinError 32]的主要内容,如果未能解决你的问题,请参考以下文章
使用 Pandas Excelwriter 写入 StringIO 对象?
Pandas ExcelWriter 是不是适用于 excel 365,或者它支持哪个版本的 excel
Pandas ExcelWriter Openpyxl 正在创建一个必须恢复的损坏文件
有没有办法在使用 pandas Excelwriter 时为某些特定行设置列的宽度?