Как форматировать строку даты через несколько форматов в python

У меня есть три формата даты: «YYYY-MM-DD», «DD.MM.YYYY», «DD / MM / YYYY»,

Можно ли проверять и анализировать строки как '2014-05-18' или '18 .5.2014 'или '18 / 05/2019'?

благодаря

  • Преобразование формата unicode в формат datetime в формате strptime
  • Python -Remove Время из строки Datetime
  • ValueError: данные времени '24: 00 'не соответствуют формату'% H:% M '
  • Как разбирать str (my_datetime) с помощью strptime?
  • python datetime strptime wildcard
  • Как я могу указать период (AM / PM) с datetime.strptime?
  • time.strptime () - аргумент 0 должен быть str, а не байтами
  • Python ImportError для strptime в spyder для Windows 7
  • 3 Solutions collect form web for “Как форматировать строку даты через несколько форматов в python”

    Попробуйте каждый формат и посмотрите, работает ли он:

     from datetime import datetime def try_parsing_date(text): for fmt in ('%Y-%m-%d', '%d.%m.%Y', '%d/%m/%Y'): try: return datetime.strptime(text, fmt) except ValueError: pass raise ValueError('no valid date format found') 
     >>> import dateutil.parser >>> dateutil.parser.parse(date_string) 

    Это должно позаботиться о большинстве стандартных форматов даты в Python 2.7+. Если у вас действительно есть настраиваемые форматы дат, вы всегда можете вернуться к тому, о котором говорил Джон Клементс.

    Чистый питон:

     from datetime import datetime my_datetime = datetime.strptime('2014-05-18', '%Y-%m-%d') repr(myd) >>> 'datetime.datetime(2014,5,18,0,0)' 

    Проверьте документацию формата datetime.strptime () для большего количества строк форматирования.

    Python - лучший язык программирования в мире.