Search code examples
pythonvalidationdatepython-3.x

How can I validate a date in Python 3.x?


I would like to have the user input a date, something like:

date = input('Date (m/dd/yyyy): ')

and then make sure that the input is a valid date. I don't really care that much about the date format.

Thanks for any input.


Solution

  • You can use the time module's strptime() function:

    import time
    date = input('Date (mm/dd/yyyy): ')
    try:
      valid_date = time.strptime(date, '%m/%d/%Y')
    except ValueError:
      print('Invalid date!')
    

    Note that in Python 2.x you'll need to use raw_input instead of input.