Пишу для работы универсальный шаблонизатор. И встрял с датами. Скрипт открывает произвольный файл xlsx, и вставляет данные из таблицы в Word. Но там где попадаются в excel столбцы с датами, python воспринимает его тип как datetime.datetime (Y-m-d H:M:S) , а не str (как мне нужно). Как сделать так, чтобы формат даты на выходе был хотя бы %d.%m.%Y.
Как я понял в openpyxl по умолчанию datetime - ISO
import re
import os
import openpyxl
from docxtpl import DocxTemplate
for file in os.listdir():
if file.endswith(".xlsx"):
filename = os.path.join(file)
instruc_1 = str('1. В ПАПКЕ С ПРОГРАММОЙ ДОЛЖЕН НАХОДИТЬСЯ EXCEL ФАЙЛ С РАСШИРЕНИЕМ .xlsx')
print (instruc_1)
instruc_2 = str('2. В ПАПКЕ С ПРОГРАММОЙ ДОЛЖЕН НАХОДИТЬСЯ WORD ФАЙЛ (САМ ШАБЛОН) С РАСШИРЕНИЕМ ".docx"')
print (instruc_2)
warrning = str('К столбцу "AS" соответствует шаблон "aas"')
print(warrning)
start_row = input ('Введите начало строки: ')
start_row = int(start_row)
end_row = input ('Введите конец строки: ')
end_row = int(end_row)
book = openpyxl.open(filename)
sheet = book.active
string_count = 0
mydict = ['','a','b','c','d','e']
for row in range (start_row, end_row+1):
string_count += 1
context = {}
for col in range (1, 6):
context[mydict[col]] = sheet.cell(row, col).value
book.close()
for docx in os.listdir():
if docx.endswith(".docx"):
filename_doc = os.path.join(docx)
doc = DocxTemplate(filename_doc)
doc.render(context)
doc.save(str(string_count)+" "+str(file)+".docx")
Ой как благодарю кто подскажет