Разбор даты, которая может быть в нескольких форматах в Python

Я хотел бы проанализировать дату, которая может быть в нескольких форматах, которые я знаю заранее. Если я не смог разобрать, я возвращаю ноль. В рубине я делаю так:

DATE_FORMATS = ['%m/%d/%Y %I:%M:%S %p', '%Y/%m/%d %H:%M:%S', '%d/%m/%Y %H:%M', '%m/%d/%Y', '%Y/%m/%d']

def parse_or_nil(date_str)
    parsed_date = nil
    DATE_FORMATS.each do |f|
        parsed_date ||= DateTime.strptime(date_str, f) rescue nil
    end
    parsed_date
end

Это сжато и работает. Как я могу сделать то же самое в Python?

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

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