【问题标题】:Error with Pandas ExcelWriter .save(); Permission Error [WinError 32]Pandas ExcelWriter .save() 出错;权限错误 [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 中打开了目标文件?这是此类问题的最常见原因。
  • 不,我当时没有打开目标文件。而且,我认为(临时)文件名不同,但目录是相同的。
  • 目前我做的是在我运行程序之前删除临时文件,当问题发生时
  • 你能把你正在使用的代码。尝试在我的计算机上复制它可能会有所帮助,以更好地帮助您。

标签: python excel python-3.x pandas pandas.excelwriter


【解决方案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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-15
    • 2022-11-10
    • 1970-01-01
    • 1970-01-01
    • 2016-01-01
    • 1970-01-01
    • 2016-01-22
    相关资源
    最近更新 更多