Pandas / xlsxwriter writer.close () не полностью закрывает файл Excel - PullRequest
2 голосов
/ 25 июня 2019

Я пытаюсь вручную изменить файл Excel после создания его с помощью скрипта Python. К сожалению, если скрипт все еще выполняется, при попытке сохранить его с тем же именем появляется сообщение об ошибке нарушения файла общего доступа.

В коде все идет гладко. Файл создан, заполнен и сохранен. Я могу открыть его и поработать над ним, но не могу перезаписать его под тем же именем, если скрипт все еще выполняется.

outpath = filedialog.asksaveasfile(
    mode="wb",
    filetype=[("Excel", ("*.xls", "*.xlsx"))],
    defaultextension=".xlsx",
)
writer = pd.ExcelWriter(outpath, engine="xlsxwriter")
df1.to_excel(writer, sheet_name="Results")
writer.save()
writer.close()

Я ожидаю, что python полностью закроет файл Excel и позволит мне перезаписать его, пока скрипт еще работает

1 Ответ

2 голосов
/ 25 июня 2019

Ваш код выглядит слишком сложным, вам не нужно иметь дело с самим автором df.to_excel() может сделать это за вас.Просто используйте более простой код: df1.to_excel(outpath, sheet_name="Results", engine='xlsxwriter'), как предложено в документах .

...