Двузначные года с использованием strptime () не способны хорошо анализировать дни рождения

Рассмотрим следующие дни рождения (какdob):

1-Jun-681-Jun-69

Когда разбирается с Pythondatetime.strptime(dob, '%d-%b-%y') даст:

datetime.datetime(2068, 6, 1, 0, 0)datetime.datetime(1969, 6, 1, 0, 0)

Ну, конечно, они должны были родиться в одно и то же десятилетие, но теперь это даже не в том же веке!

Согласнодокументы это совершенно правильное поведение:

Когда принимаются двухзначные годы, они конвертируются в соответствии со стандартом POSIX или X / Open: значения 69–99 отображаются на 1969–1999, а значения 0–68 - на 2000–2068.

Я понимаю, почему функция настроена так, но есть ли способ обойти это? Возможно с определением ваших собственных диапазонов для двухзначных лет?

Ответы на вопрос(3)

Ваш ответ на вопрос