Я пытаюсь создать переменные внутри цикла, а затем присвоить им значение в той же итерации цикла. Мой код не работает, я понимаю, почему, но не могу понять, как это исправить. Я использую Python 3.6 с текущими версиями всех импортированных пакетов. Вот мой код:
import openpyxl
months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
for month in months:
filepath = 'C:\codes\Furnace_time_log\\2019\\' + month + '_2019.xlsx'
workbook_name = month+'_wb'
workbook_name = openpyxl.load_workbook(filepath)
sheet_name = month+'_sheet'
sheet_name = workbook_name.get_sheet_by_name('Sheet1')
Из этого я хочу получить 12 объектов листа openpyxl с именами "January_sheet", "February_sheet", ...
Ранее в моем коде у меня было следующееобразец, который делает именно то, что он должен. Вот на чем я основываю логику моего ошибочного кода:
head_wb = openpyxl.load_workbook('C:\codes\Furnace_time_log\head.xlsx')
head_sheet = head_wb.get_sheet_by_name('Sheet 1')
Я работаю с файлом Excel, где каждая строка содержит дату и много другой полезной информации. Если дата строки x указана в январе, мне нужно поместить смежные данные в отдельный документ XLSX («January_2019.xlsx»), который я могу редактировать с помощью объекта January_sheet.
Любой совет, как этого добиться? Кроме того, я не связан с производительностью. Этот код должен запускаться только один раз для полного набора данных. Я понимаю, что, возможно, есть более эффективный способ сделать это, чем одновременно открывать 12 книг и листов openpyxl. При этом приветствуются любые лучшие способы достижения этого.