Перевод формата даты Excel в python datetime формат

141
21 декабря 2021, 14:00

Работаю над задачей перевода формата даты ячейки Excel-я в python datetime формат. Нашел на английском stackoverflow подходящую реализацию перевода C# формата даты в python datetime формат: https://stackoverflow.com/questions/4188032/python-datetime-format-like-c-sharp-string-format. Но она также не сработала должным образом. Примеры Excel форматов:

  1. "[$-F800]dddd\,\ mmmm\ dd\,\ yyyy" - соответствует "9 января 1900 г.";

  2. "d/mm/yyyy;@" - соответствует "5.01.2015";

  3. "[$-FC19]yyyy\,\ dd\ mmmm;@" - соответствует "1900, 24 ноября";

Каким образом перевести формат ячейки типа дата в python datetime формат? Буду благодарен любой подсказке.

Answer 1

если вопрос по шарпу то:

var rez = DateTime.ParseExact(inputStr,"паттерн даты", null);

паттерн даты можешь сложить по этому ответу: https://ru.stackoverflow.com/a/946289/186752

Если вопрос по python то:

rez = datetime.datetime.strptime(inputStr, 'паттерн даты')
Answer 2

pip install xlrd

Возьмем таблицу report.xlsx с полем (колонкой, столбцом) DATETIME в котором находятся данные в фомате excel Date

import pandas as pn
from xlrd.xldate import xldate_as_datetime
df = pn.read_excel('./report.xlsx', header=0,
                    converters={
                    'DATETIME': lambda x: xldate_as_datetime(float(x), 0)
                    }
                  )

На выходе получаем DataFrame с полем DATETIME в формате python datetime

или если брать просто значение отдельной считаной ячейки excel (к примеру excel_date):

excel_date = 43951.99999 # к примеру
python_datetime = xldate_as_datetime(float(excel_date), 0)
print(python_datetime.strftime('%d.%m.%Y %H:%M:%S'))
# 30.04.2020 23:59:59
READ ALSO
Решить пример 38^29 mod 91 на C#

Решить пример 38^29 mod 91 на C#

Пробовал сам сделать, но C# не может, такие большие числа обрабатывать правильноНа Python все ок работает

134
Можно ли применить к include() фильтры take() и skip()

Можно ли применить к include() фильтры take() и skip()

В принципе в названии вопрос ясен, есть список, у элемента списка есть еще список, из бд мне нужно получить ограниченное количество элементов...

87
Как ускорить парсинг JSON файла?

Как ускорить парсинг JSON файла?

Пишу парсер для steam инвентаря

184
Как правильно подключить скрипты к WordPress?

Как правильно подключить скрипты к WordPress?

У меня есть скрипты, которые я подключаю в файле functionsphp

151