如何在Python 3.x中验证日期?
我想让用户输入一个日期,类似这样的:
date = input('Date (m/dd/yyyy): ')
然后我需要确保这个输入的日期是有效的。我对日期的格式其实没那么在意。
谢谢大家的帮助。
3 个回答
2
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
3
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
在程序中使用之前定义的函数:
27
你可以使用 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
。