繁体   English   中英

如何在Python 3.x中验证日期?

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

我想让用户输入日期,例如:

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

然后确保输入是有效日期。 我对日期格式并不是那么在意。

感谢您的任何意见。

您可以使用time模块的strptime()函数:

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

请注意,在Python 2.x中,您需要使用raw_input而不是input

Max S.,

谢谢你的代码。 这是我实现它的方式:

while True:
    date = input('Date (m/dd/yyyy): ')
        try:
            date = time.strptime(date, '%m/%d/%Y')
            break
        except ValueError:
            print('Invalid date!')
            continue
def validDate(y, m, d):
  Result = True
  try:
    d = datetime.date(int(y), int(m), int(d))
  except ValueError, e:
    Result = False
  return Result

并在程序中使用前面定义的函数:

 if not validDate(year_file, month_file, day_file):
   return 0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM