Как проверить, действительна ли дата в Python: различные методы

Чтобы проверить допустимость даты в Python, вы можете использовать различные методы. Вот несколько подходов:

  1. Использование модуля datetime:

    from datetime import datetime
    def is_valid_date(date_string, format):
       try:
           datetime.strptime(date_string, format)
           return True
       except ValueError:
           return False
    # Example usage
    date_string = "2023-12-31"
    format = "%Y-%m-%d"
    if is_valid_date(date_string, format):
       print("Valid date")
    else:
       print("Invalid date")
  2. Использование библиотеки dateutil:

    from dateutil.parser import parse
    def is_valid_date(date_string):
       try:
           parse(date_string)
           return True
       except ValueError:
           return False
    # Example usage
    date_string = "31-12-2023"
    if is_valid_date(date_string):
       print("Valid date")
    else:
       print("Invalid date")
  3. Использование регулярных выражений (регулярных выражений):

    import re
    def is_valid_date(date_string):
       pattern = r"^\d{4}-\d{2}-\d{2}$"  # Assuming YYYY-MM-DD format
       if re.match(pattern, date_string):
           return True
       return False
    # Example usage
    date_string = "2023-12-31"
    if is_valid_date(date_string):
       print("Valid date")
    else:
       print("Invalid date")