如何检查输入是否为日期

时间:2015-08-18 12:06:20

标签: python function

我想定义一个函数来检查输入是否是日期。如果输入不是我希望它说的日期:抱歉再试一次,如果是日期我需要程序停止。我尝试了很多东西,但没有一个工作,我没有我尝试过的代码,因为我删除了这个功能。

2 个答案:

答案 0 :(得分:6)

使用datetime库:

import datetime

def validate(date_text):
    try:
        datetime.datetime.strptime(date_text, '%Y-%m-%d')
    except ValueError:
        raise ValueError("Incorrect data format, should be YYYY-MM-DD")

比那样验证:

validate('2015-08-18')

答案 1 :(得分:0)

您可以使用dateutil模块,看看是否可以转换输入,如果不打印try again

from dateutil.parser import parse
def validate_string(inp_string):
    try:
        parse(inp_string)
        print "yes"
    except :
        print "Wrong try again"
validate_string("asd")

<强>输出:

validate_string("asd")
Wrong try again
validate_string('2015-01-1')
yes