Так как есть вероятность, что ваши файлы Excel приходят с разных компьютеров / людей; есть вероятность, что форматирование будет грязным; так что будьте особенно осторожны.
Я только что импортировал данные из 50 странных исключений, где даты были введены в DD/MM/YYYY
или DD-MM-YYYY
, но большинство файлов Excel хранилось их как MM/DD/YYYY
( Вероятно, потому что ПК были настроены с en-us
вместо en-gb
или en-in
).
Еще более раздражающим был тот факт, что даты выше 13/MM/YYYY
все еще были в формате DD/MM/YYYY
. Таким образом, в файлах Excel были различия.
Самым надежным решением, которое я нашел, было вручную установить для столбца «Дата» в каждом файле Excel значение «Простой текст», а затем использовать этот код для его анализа:
if date_str_from_excel:
try:
return datetime.strptime(date_str_from_excel, '%d/%m/%Y')
except ValueError:
print("Unable to parse date")