Pandas ExcelWriter не закрывается должным образом, что приводит к нарушениям совместного использования при последующем рPython

Программы на Python
Anonymous
Pandas ExcelWriter не закрывается должным образом, что приводит к нарушениям совместного использования при последующем р

Сообщение Anonymous »

Я работаю с файлом Excel, содержащим несколько листов, и хочу добавить к нему новый лист, когда закончу работу с кодом. На стороне Python он работает отлично.
Но когда я открываю файл Excel и пытаюсь сохранить его после изменения, я получаю сообщение о нарушении общего доступа от Excel.
Я используя Spyder, и если я перезапущу ядро, я больше не получаю эту ошибку, поэтому есть обходной путь, поэтому нет срочности в ответе. Но я думаю, было бы неплохо иметь простой способ решения этой проблемы.
Я использую python 3.11, pandas 2.2.2, openpyxl 3.1.2
Вот фрагмент моего кода:

Код: Выделить всё

import pandas as pd
import os

"""I first open the file, which is, and was working perfectly fine before"""
path_to_excel = os.path.realpath(r"Something\Something\myfile.xlsx")
df_excel = pd.read_excel(io=path_to_excel ,sheet_name='Sheet 1', index_col=2)

"""Some code to build a new dataframe called df_new"""

"""Then I append df_new to myfile.xlsx"""
with pd.ExcelWriter(path=path_to_excel, mode='a',if_sheet_exists="replace",engine="openpyxl") as Writer:
df_new.to_excel(excel_writer=Writer,sheet_name="Sheet 2",float_format="%.2f",index_label="Cool index name")

"""I also tried to write it this way, but the result is the same"""
Writer = pd.ExcelWriter(path=path_to_excel, mode='a',if_sheet_exists="replace",engine="openpyxl")
df_new.to_excel(excel_writer=Writer,sheet_name="Sheet 2",float_format="%.2f",index_label="Cool index name")
Writer.close()
Writer.handles=None

Будем признательны за любую информацию в ретроспективе, спасибо!

Подробнее здесь: https://stackoverflow.com/questions/785 ... -when-edit

Вернуться в «Python»